正则表达式

来源:互联网 发布:centos输入法下载安装 编辑:程序博客网 时间:2024/06/05 18:56

^匹配字符串的开始位置,$匹配字符串的结束位置,可省略

使用给定的正则表达式匹配当前字符串格式:str.matches(regex);

str.split(regex);返回字符串数组。-- 将当前字符串中满足正则表达式的部分切掉,取左右两边相等的内容,最终将每一项存入数组并返回,当要拆分的部分在字符串末尾出现时,那么忽略不计,若用"."拆分,则为[]数组。

将满足正则表达式的部分,替换为给定字符串:str.replaceAll('regex','给定字符串');


在js中:

test是RegExp的方法,参数是字符串,返回值是boolean类型。
match是String的方法,参数是正则表达式,返回值是数组。

js中正则表达式使用变量:

var re = new RegExp("^\\d+$","gim"); //注意,反斜杠需要转义
那么,给它加变量,就和我们前面写的给字符串加变量一样了。
var v = "bl";
 
var re =new RegExp("^\\d+" + v + "$","gim"); // re为/^\d+bl$/gim
至此,最初的问题问题也完全解决了。
 
另外,还有一种方法是用过eval动态执行一段字符串的方法,不过我觉得从各方面来说,都属下策。
var re = eval("/^\\d+" + v + "$/gim")


1、[abc]     a、b、c中任意一个字符

2、[^abc]   除了abc的任意一个字符

3、[a-z]     a、b、c....z中任意一个字符

4、[a-zA-Z0-9] a-z、A-Z、0-9中的任意一个字符

5、[a-z&&[^bc]]   a-z除了b、c以外的任意一个字符

6、.(点) 任意一个字符,表示字符.(点)需要\\.

7、\d任意一个数字字符,相当于[0-9]

8、\D任意一个非数字字符,相当于[^0-9]

9、\s空白字符,相当于[\t\n\XOB\f\r]

10、\S,非空白字符,相当于[^\s]

11、\w任意一个单词字符,相当于[a-zA-Z_0-9]

12、\W任意一个非单词字符,相当于[^\w]

13、X?表示0个或1个X

14、X*表示0个或任意多个X

15、X+表示至少一个X

16、X{n}表示n个X

17、X{n,}表示n个到任意多个X(大于等于n个X)

18、X{n,m}表示n个到m个X(大于等于n个且小于m个X)

19、\t制表符,\r回车符,\n换行符,\s空白字符


0 0
原创粉丝点击