正则表达式(javascript)

来源:互联网 发布:python卡尔曼滤波 编辑:程序博客网 时间:2024/06/05 07:00

正则

1.正则的定义:

正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的一些特殊字符,及这些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一种过滤逻辑。

2.规则

. 匹配任何单个字符,除了换行
d 数字 \D 非数字 [0-9]
w 数字 字母 下划线 \W 非 [0-9a-zA-Z_]
\s 空白 \S 非空白
\n 换行
\t 制表符
[0-9] [0123] [a-z] [A-Z] 匹配的是一个字符
| 或者
a+ 1个或多个a
a? 1个或0个a
a* 0个或多个a
a{x} x个n
a{x,} 至少x个a
a{x,y} x-y个a
^a 以a开始
a$ 以a结束
i 忽略大小写
g 全局匹配

3.正则表达式对象RegExp

示例:

<body>    <a href="http://www.baidu.com" id="link">百度</a><script>//    var regularExpression =  new RegExp("\\d");     //第一种写法    var regularExpression = /\d/;     //第二种写法    var str = "adfj23dald";    console.log(regularExpression.test(str));     //test就是匹配方法,结果是true</script></body>

正则之匹配

//验证电子邮箱// abc@sohu.com// 11111@qq.com// aaaaa@163.com// abc@sina.com.cn var reg = /^\w+@\w+\.\w+(\.\w+)?$/;var str = "abc@sina.com.cn";console.log(reg.test(str));

正则之提取

1 var str = "张三: 1000,李四:5000,王五:8000。";2 var reg = /\d+/g;3 //默认情况下,找到第一个匹配的结果就返回,后面加个g,就是全局找4  var arr = str.match(reg);5 console.log(arr);

正则之替换

1 var str = "abc,efg,123,abc,123,a";2 str = str.replace(/,/g,".");3 console.log(str);

正则的分组( )

1 var str = "5=a, 6=b, 7=c";2 str = str.replace(/(\d+)=(\w+)/g, "$2=$1");3console.log(str);

详细内容可参照
http://www.w3school.com.cn/jsref/jsref_obj_regexp.asp

1 0
原创粉丝点击