`
andrew1024
  • 浏览: 74834 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

js正则函数(内部)

    博客分类:
  • JS
阅读更多
1.)String方法
a.)String.search()
参数:可以是正则表达式也可以是普通的字符串。
返回值:如果找到匹配则返回首字符的索引位置,找不到则返回-1
var s = "Hello world.";
reg = /world/i;            // i表示不区分大小写
alert(s.search(reg));
b.)String.replace()
参数:1.正则表达式 2.用于替换的字串
返回替换后的字符串
var s = "Hello world.World!";
reg = /world/gi;            // g为全局模式,会替换所有匹配
alert(s.replace(reg,'a'));
子表达式(可以通过$n访问括号里匹配的子表达式):
var s = "11 22 33 44 55 66 77!";
reg = /(\S+)(\s+)(\S+)/g;            // i表示不区分大小写
alert(s.replace(reg,'$3$2$1')); //22 11 44 33 66 44 77!
c.)String.match()
把匹配的字符串放到数组里面返回。没有匹配则返回null
//全局模式下,每个匹配放到返回数组里
var s = "我的电话号码0631-1234567 你的是021-87654321,我们常联系啊!";
reg = /(0\d\d-\d{8}|0\d\d\d-\d{7})/g;   // 注意这个正则可能不完整还可能有更简单的写法
alert(s.match(reg)); //0631-1234567,021-87654321
//没有设置g标记时,返回的数组[0]是整体匹配,1-n表示子匹配
var s = "我的工资是$800,她的工资是$400!";
reg = /(\$)(\d+)/;   // $需要\转义
alert(s.match(reg)); //$800,$,800
d.)String.split([分隔符[,返回元素个数限制])
//普通的分割
var s = "我的工资是$800,她的工资是$400!";
alert(s.split(',')[0]); //我的工资是$800
//使用正则
var s = "中国人口达到14亿,人均收入却不到3000美元,所以中国还处于发展中国家!";
alert(s.split(/\d/)); //中国人口达到,亿,人均收入却不到,美元,所以中国还处于发展中国家!
2.)RegExp对象
a.)RegExp.test(str)
绻鹲tr匹配此正则对象则返回true.
var s = "这句话包含数字123用于测试!";
var re=/\d+/;
if(re.test(s))
alert("包含数字");
b.)RegExp.exec()比String.match()更强大
//非全局调用exec,[0]返回匹配,1-n返回子匹配
var s = "数字123,字母abc,下划线_!";
var re=/(\w)\w*/;
alert(re.exec(s));//123,1
alert(re.exec(s).input);//数字123,字母abc,下划线_!
alert(re.exec(s).index);//2
//带全局标记
var s = "数字123,字母abc,下划线_!";
var re=/(\w)\w*/g;
alert(re.lastIndex);//0
alert(re.exec(s));//123,1
alert(re.lastIndex);//5
alert(re.exec(s));//abc,a
alert(re.lastIndex);//11
alert(re.exec(s));//_,_
alert(re.lastIndex);//16
c.)正则表达式构造函数
re = new RegExp("pattern",["flags"])
var s = "数字123,字母abc,下划线_!";
var re=new RegExp("(\\w)\\w*","g");//由于\在引号内也是转义符,所以需要多加一个\
alert(re.exec(s));//123,1
分享到:
评论

相关推荐

    经典JavaScript正则表达式实战

    JavaScript正则表达式是编程语言JavaScript中用于处理字符串的强大工具,它可以用来进行各种复杂的文本匹配、替换和提取操作。在实战中,以下是一些常见的正则表达式应用场景及其详细解释: 1. **匹配结尾的数字**...

    【JS相关问题处理】 正则表达式解决JS取值被过滤掉引号的方法

    可以使用JavaScript的`replace()`函数配合正则表达式来插入丢失的引号。假设你有一个不包含引号的字符串`unquotedStr`,你可以这样做: ```javascript var quotedStr = unquotedStr.replace(/(\w+):(\w+)/g, '"$...

    [js]一个只删除所有font标签的正则函数

    在探讨如何用JavaScript编写一个只删除所有font标签的正则函数之前,我们首先需要了解font标签和正则表达式的基础知识。 font标签是HTML早期用来定义字体样式、大小和颜色的一个元素。例如,`文字内容</font>`。...

    JS正则表达式的文本说明

    JavaScript(简称JS)中的正则表达式是一种强大的文本处理工具,用于模式匹配、搜索、替换等操作。在JS中,正则表达式是通过构造函数`RegExp`或使用特殊的正则字面量语法(用斜杠`/`包围)创建的。本篇将深入探讨JS...

    JavaScript手册及正则表达式详解[收藏]

    1. 原型:每个JavaScript对象都有一个内部[[Prototype]]属性,通常通过`__proto__`或`Object.getPrototypeOf()`访问。原型链允许对象共享属性和方法。 2. 构造函数和实例:构造函数用于创建特定类型的对象,如`...

    Javascript正则表达式校验共7页.pdf.zip

    JavaScript正则表达式是编程语言JavaScript中的一个强大工具,用于处理文本字符串,执行模式匹配和数据验证。在JavaScript中,正则表达式是通过构造函数`RegExp`或使用特殊的正则字面量语法(用斜杠`/`包围)创建的...

    js正则表达式的使用

    本教程将深入探讨JavaScript正则表达式的使用方法,帮助你掌握这一核心技术。 1. **基础语法** - `/pattern/flags` 是JavaScript中正则表达式的典型表示方式,其中`pattern`是你要匹配的模式,`flags`是可选的修饰...

    javascript实现的一个最简的正则引擎

    通过阅读源代码,我们可以学习到更多关于正则引擎内部工作原理的细节,这对于理解JavaScript中的正则表达式和优化自己的代码非常有帮助。 总的来说,构建一个正则引擎需要理解正则表达式的基本结构和语法规则,然后...

    将 JavaScript 序列化为包含正则表达式和函数的 JSON 超集 .zip

    序列化 JavaScript将 JavaScript 序列化为包含正则表达式、日期和函数的 JSON超集。 概述此包中的代码最初是express-state的一个内部模块。为了扩展其用途,它现在作为serialize-javascriptnpm 上的一个独立包存在。...

    JS正则表达式30分钟入门教程

    JavaScript正则表达式是编程语言JavaScript中用于处理字符串的强大工具,它允许程序员通过特定的模式匹配和操作文本。本教程的目标是在30分钟内帮助初学者理解正则表达式的基本概念,并提供一些实用技巧。 首先,...

    JS正则表达式详解.mht

    本文将深入讲解JavaScript正则表达式的各种概念、语法以及常见用法。 1. **基础概念** - **模式**:正则表达式中的模式是描述要匹配的字符串序列的字符和特殊符号组合。 - **分隔符**:在JavaScript中,通常使用...

    手机号码格式校验 JS正则表达式

    1. 函数内部使用了`!!`运算符,这会导致即使`phone.val()`返回的是`undefined`,也会被视为`true`而进入正则表达式的匹配。建议直接使用`phone.val()`进行匹配。 2. 返回值 `"ֻʽȷ"` 是乱码,应该改为中文提示:...

    常用的JS 特效 函数

    闭包是JavaScript中一个高级特性,它可以访问并操作函数内部变量,即使该函数已经执行完毕。闭包常用于封装私有变量和实现模块化。 十、事件委托 事件委托是一种优化技术,通过在父元素上监听事件,然后根据事件...

    javascript的正则表达式

    接下来对函数内部逻辑进行详细解析: 1. **变量声明与赋值**: ```javascript var temp; temp = vardatestring; ``` 这里首先声明了一个变量`temp`,并将传入的日期字符串`vardatestring`赋值给它,方便后续...

    js利用正则表达式检验输入内容是否为网址

    在JavaScript正则表达式中,有一些特殊的字符,如“+”表示匹配前面的字符一次或多次。在文章中提到的“+”符号,用于确保域名部分至少出现一次,这确保了网址至少包含一个域名。同时,使用“[]”来定义一个字符集,...

    js正则判断非法字符限制输入

    在实际应用中,将正则表达式应用于用户输入验证通常需要监听输入框的`keyup`或`input`事件,每当用户输入时触发事件处理函数,函数内部使用正则表达式进行匹配测试。如果检测到非法字符,可以通过弹窗提示用户,或者...

    javascript正则表达式中分组详解.docx

    本文将详细介绍JavaScript正则表达式中的分组,包括捕获性分组和非捕获性分组。 首先,我们来理解捕获性分组。捕获性分组是通过在模式中使用圆括号(())来创建的。当正则表达式匹配成功时,捕获性分组会捕获其内部...

    JS验证IP函数(支持分段验证)

    函数内部首先通过`re.test(strIP)`来判断输入的字符串是否符合上述正则表达式的规则。如果匹配成功,则进一步检查每个捕获的数字段是否满足以下条件: 1. **每个数字段必须小于256**:这是IPv4地址的基本要求,任何...

Global site tag (gtag.js) - Google Analytics