常用正则表达式

合集下载

常用正则表达式语法大全

常用正则表达式语法大全

正则表达式是一种用于匹配和处理文本的强大工具,可以在很多编程语言和文本编辑器中使用。

以下是一些常用的正则表达式语法:1.字符匹配:–.: 匹配任意单个字符,不包括换行符。

–\w: 匹配任意字母、数字或下划线。

–\d: 匹配任意数字。

–\s: 匹配任意空白字符,包括空格、制表符、换行等。

–[...]: 匹配方括号内的任意字符。

例如,[aeiou]匹配任意一个元音字母。

–[^...]: 匹配除了方括号内字符之外的任意字符。

例如,[^aeiou]匹配任意一个非元音字母。

2.重复匹配:–*: 匹配前一个字符0次或多次。

–+: 匹配前一个字符1次或多次。

–: 匹配前一个字符0次或1次。

–{n}: 匹配前一个字符恰好n次。

–{n,}: 匹配前一个字符至少n次。

–{n,m}: 匹配前一个字符至少n次,最多m次。

3.边界匹配:–^: 匹配字符串的开始位置。

–$: 匹配字符串的结束位置。

–\b: 匹配单词边界,即单词前后的位置。

–\B: 匹配非单词边界的位置。

4.分组和捕获:–(): 将括号内的表达式视为一个分组。

–(?:): 类似于普通分组,但不进行捕获。

–\n: 反向引用,引用第n个分组的内容。

5.特殊字符转义:–\: 转义字符,用于匹配特殊字符本身。

6.修饰符:–i: 忽略大小写。

–g: 全局匹配,不仅匹配第一个结果。

–m: 多行匹配,使^和$匹配每一行的开始和结束。

这里列举了一些常用的正则表达式语法,但实际使用中,还有更多复杂的语法和特性,可以根据具体需求查阅更详细的正则表达式文档和教程。

不同编程语言和文本编辑器对正则表达式的支持也有所不同,所以在实际应用中需要根据具体的环境进行调整。

input pattern 常用的正则表达式

input pattern 常用的正则表达式

input pattern 常用的正则表达式以下是一些常用的正则表达式,可以用于匹配输入模式: 1. 匹配任意数字的正则表达式:
- d - 匹配任意数字。

- [0-9] - 匹配数字。

- d+ - 匹配至少一个数字。

- d{1,3} - 匹配 1 到 3 个数字。

- d{3} - 匹配 3 个数字。

2. 匹配奇数或偶数的正则表达式:
- (?! 偶数) - 否定模式,表示正增强人体不能为偶数。

- d* - 匹配任意数字。

- (?! 偶数)d* - 匹配任意非偶数数字。

3. 匹配下划线的正则表达式:
- w - 匹配任意单词字符 (字母、数字和下划线)。

- _ - 匹配单个下划线。

- w+_?w* - 匹配至少一个下划线的任意单词字符。

4. 匹配表单输入框的值的正则表达式:
- $^ - 匹配字符串的开始。

- w - 匹配任意单词字符 (字母、数字和下划线)。

- D - 匹配任意非数字字符。

- s - 匹配任意空格字符。

- $ - 匹配字符串的结束。

- (w+|D+) - 匹配一个或多个单词字符或非数字字符。

- [(^w|D)+] - 匹配一个或多个非空格字符,其中非空格字符可以是单词字符或非数字字符。

这些只是常用的一些正则表达式,可以根据具体的应用场景选择合适的正则表达式。

常用正则表达式大全!(例如:匹配中文、匹配html)

常用正则表达式大全!(例如:匹配中文、匹配html)

常⽤正则表达式⼤全!(例如:匹配中⽂、匹配html)⼀、常见正则表达式 匹配中⽂字符的正则表达式: [u4e00-u9fa5] 评注:匹配中⽂还真是个头疼的事,有了这个表达式就好办了 匹配双字节字符(包括汉字在内):[^x00-xff] 评注:可以⽤来计算字符串的长度(⼀个双字节字符长度计2,ASCII字符计1) 匹配空⽩⾏的正则表达式:ns*r 评注:可以⽤来删除空⽩⾏ 匹配HTML标记的正则表达式:<(S*?)[^>]*>.*?|<.*? /> 评注:⽹上流传的版本太糟糕,上⾯这个也仅仅能匹配部分,对于复杂的嵌套标记依旧⽆能为⼒ 匹配⾸尾空⽩字符的正则表达式:^s*|s*$ 评注:可以⽤来删除⾏⾸⾏尾的空⽩字符(包括空格、制表符、换页符等等),⾮常有⽤的表达式 匹配Email地址的正则表达式:w+([-+.]w+)*@w+([-.]w+)*.w+([-.]w+)* 评注:表单验证时很实⽤ 匹配⽹址URL的正则表达式:^(http|https):\/\/[\w\-_]+(\.[\w\-_]+)+([\w\-\.,@?^=%&amp;:/~\+#]*[\w\-\@?^=%&amp;/~\+#])?$ 评注:⽹上流传的版本功能很有限,上⾯这个基本可以满⾜需求匹配帐号是否合法(字母开头,允许5-16字节,允许字母数字下划线):^[a-zA-Z][a-zA-Z0-9_]{4,15}$ 评注:表单验证时很实⽤ 匹配国内电话号码:d{3}-d{8}|d{4}-d{7} 评注:匹配形式如 0511-******* 或 021-******** 匹配腾讯QQ号:[1-9][0-9]{4,} 评注:腾讯QQ号从10000开始 匹配中国邮政编码:[1-9]d{5}(?!d) 评注:中国邮政编码为6位数字 匹配⾝份证:d{15}|d{18} 评注:中国的⾝份证为15位或18位 匹配ip地址:d+.d+.d+.d+ 评注:提取ip地址时有⽤ 匹配特定数字: ^[1-9]d*$ //匹配正整数 ^-[1-9]d*$ //匹配负整数 ^-?[1-9]d*$ //匹配整数 ^[1-9]d*|0$ //匹配⾮负整数(正整数 + 0) ^-[1-9]d*|0$ //匹配⾮正整数(负整数 + 0) ^[1-9]d*.d*|0.d*[1-9]d*$ //匹配正浮点数 ^-([1-9]d*.d*|0.d*[1-9]d*)$ //匹配负浮点数 ^-?([1-9]d*.d*|0.d*[1-9]d*|0?.0+|0)$ //匹配浮点数 ^[1-9]d*.d*|0.d*[1-9]d*|0?.0+|0$ //匹配⾮负浮点数(正浮点数 + 0) ^(-([1-9]d*.d*|0.d*[1-9]d*))|0?.0+|0$ //匹配⾮正浮点数(负浮点数 + 0) 评注:处理⼤量数据时有⽤,具体应⽤时注意修正 匹配特定字符串: ^[A-Za-z]+$ //匹配由26个英⽂字母组成的字符串 ^[A-Z]+$ //匹配由26个英⽂字母的⼤写组成的字符串 ^[a-z]+$ //匹配由26个英⽂字母的⼩写组成的字符串 ^[A-Za-z0-9]+$ //匹配由数字和26个英⽂字母组成的字符串 ^w+$ //匹配由数字、26个英⽂字母或者下划线组成的字符串 在使⽤RegularExpressionValidator验证控件时的验证功能及其验证表达式介绍如下: 只能输⼊数字:“^[0-9]*$” 只能输⼊n位的数字:“^d{n}$” 只能输⼊⾄少n位数字:“^d{n,}$” 只能输⼊m-n位的数字:“^d{m,n}$” 只能输⼊零和⾮零开头的数字:“^(0|[1-9][0-9]*)$” 只能输⼊有两位⼩数的正实数:“^[0-9]+(.[0-9]{2})?$” 只能输⼊有1-3位⼩数的正实数:“^[0-9]+(.[0-9]{1,3})?$” 只能输⼊⾮零的正整数:“^+?[1-9][0-9]*$” 只能输⼊⾮零的负整数:“^-[1-9][0-9]*$” 只能输⼊长度为3的字符:“^.{3}$” 只能输⼊由26个英⽂字母组成的字符串:“^[A-Za-z]+$” 只能输⼊由26个⼤写英⽂字母组成的字符串:“^[A-Z]+$” 只能输⼊由26个⼩写英⽂字母组成的字符串:“^[a-z]+$” 只能输⼊由数字和26个英⽂字母组成的字符串:“^[A-Za-z0-9]+$” 只能输⼊由数字、26个英⽂字母或者下划线组成的字符串:“^w+$” 验证⽤户密码:“^[a-zA-Z]w{5,17}$”正确格式为:以字母开头,长度在6-18之间,只能包含字符、数字和下划线。

正则表达式例子大全

正则表达式例子大全

正则表达式例子大全一、元字符1. .:除换行外的任意单字符2. \w:数字、字符3. \d:十进制数字4. \W:非数字、字符5. \D:非十进制数字6. \s:空白符(不可见字符)7. \S:非空白符(可见字符)8. \n:换行符9. \r:回车符10. \t:Tab空格二、字符集合1. [abc]:括号中任意单字符2. [^abc]:除括号中字符外任意字符3. [a-z]:括号中a-z英文字母4. [A-Z]:括号中A-Z英文字母5. [0-9]:括号中0-9数字三、字符数量1. *:0次或者多次2. +:1次或者多次3. ?:0次或者1次4. {n}:n次5. {m,n}:m次到n次四、限定符1. \b:单个单词边界2. ^:字符串起始处3. $:字符串结束处4. |:或者五、分组1. (exp):括号内作为一个整体进行分组2. (?:exp):六、反义1. \b:单词边界2. \B:非单词边界3. \w:数字、字母4. \W:非数字、字母5. \d:十进制数字6. \D:非十进制数字7. \s:空白符8. \S:非空白符正则表达式是一种非常强大的文本检查和替换工具,它的出现给我们带来了更为可靠、灵活的文本处理方式,简化了字符串分析和文本处理相关任务。

它还提供了强大的文本搜索能力,主要用于文本模式匹配,如:搜索、替换、拆分等,在日常的文本处理中非常有效。

它的工作原理是通过使用特殊的字符串模式,来匹配文本中的某些字符模式,如果匹配到就返回True,如果没有匹配到就返回False。

其中,元字符和字符集合是它的主要构成要素,它们既可以表示特殊的字符,也可以表示特定的字符集合。

字符数量则是用来表示字符出现的次数,而限定符则能够提升匹配精度,分组是用来将复数个为一个字符串,而反义则能够将否定相关字符串组合为一个。

正则表达式的使用方法特别多,其实质也比较简单,只要掌握基础概念,规则和其它要点,熟练掌握其使用方法,就可以任意操作字符串,进而达到更加专业的文本处理效果。

正则表达式 大全

正则表达式 大全

正则表达式(Regular Expression)是一种强大的文本处理工具,它可以用来匹配、查找、替换符合特定模式的文本。

以下是一些常用的正则表达式元字符和模式:1.\d:匹配任意数字,等价于[0-9]。

2.\D:匹配任意非数字字符。

3.\w:匹配任意字母、数字或下划线字符,等价于[a-zA-Z0-9_]。

4.\W:匹配任意非字母、数字或下划线字符。

5.\s:匹配任意空白字符,包括空格、制表符、换页符等等。

6.\n:匹配换行符。

7..:匹配除换行符之外的任意字符。

8.*:匹配前面的子表达式零次或多次。

9.+:匹配前面的子表达式一次或多次。

10.?:匹配前面的子表达式零次或一次。

11.{n}:n是一个正整数。

匹配确定的n次。

12.{n,}:n是一个正整数。

至少匹配n次。

13.{n,m}:m和n均为正整数。

最少匹配n次且最多匹配m次。

14.^:匹配输入字符串的开始位置。

15.$:匹配输入字符串的结束位置。

16.\b:匹配一个单词边界,也就是一个单词字符和一个非单词字符之间的位置。

17.\B:匹配非单词边界的位置。

18.[]:用来指定一个字符集合,只要用方括号[]把需要的字符括起来,该字符集合中的任意字符都可以用来匹配。

19.():用来分组,以影响如“*”、“+”和“?”等符号的匹配次数及“|”符号的匹配优先权。

20.|:或者的意思,用来指定多个可能的匹配。

21./:在正则表达式中没有特殊意义,只是被作为定界符使用。

22.\:用来转义特殊字符,如“\d”表示匹配数字,“\D”表示匹配非数字字符,“\w”表示匹配字母、数字或下划线,“\W”表示匹配非字母、数字或下划线,“\s”表示匹配空白字符,“\n”表示匹配换行符,“.”表示匹配除换行符之外的任意字符,“^”表示匹配输入字符串的开始位置,“$”表示匹配输入字符串的结束位置,“\b”表示匹配一个单词边界,“\B”表示匹配非单词边界,“[]”表示用来指定一个字符集合,“()”用来分组,“|”表示或者的意思,“/”在正则表达式中没有特殊意义,只是被作为定界符使用,“*”、“+”、“?”、“{n}”、“{n,}”和“{n,m}”等符号也具有特殊意义。

常用的正则表达式

常用的正则表达式

常用的正则表达式整理1、非负整数:^\d+$2、正整数:^[0-9]*[1-9][0-9]*$3、非正整数:^((-\d+)|(0+))$4、负整数:^-[0-9]*[1-9][0-9]*$5、整数:^-?\d+$6、非负浮点数:^\d+(\.\d+)?$7、正浮点数:^((0-9)+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*)) $8、非正浮点数:^((-\d+\.\d+)?)|(0+(\.0+)?))$9、负浮点数:^(-((正浮点数正则式)))$10、英文字符串:^[A-Za-z]+$11、英文大写串:^[A-Z]+$12、英文小写串:^[a-z]+$13、英文字符数字串:^[A-Za-z0-9]+$14、英数字加下划线串:^\w+$15、E-mail地址:^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$16、URL:^[a-zA-Z]+://(\w+(-\w+)*)(\.(\w+(-\w+)*))*(\?\s*)?$或:^http:\/\/[A-Za-z0-9]+\.[A-Za-z0-9]+[\/=\?%\-&_~`@[\]\':+!]*([^<>\"\"])*$17、邮政编码:^[1-9]\d{5}$18、中文:^[\u0391-\uFFE5]+$19、电话号码:^((\(\d{2,3}\))|(\d{3}\-))?(\(0\d{2,3}\)|0\d{2,3}-)?[1-9]\d{6,7}(\-\d{1,4})?$ 20、手机号码:^((\(\d{2,3}\))|(\d{3}\-))?13\d{9}$21、双字节字符(包括汉字在内):^\x00-\xff22、匹配首尾空格:(^\s*)|(\s*$)(像vbscript那样的trim函数)23、匹配HTML标记:<(.*)>.*<\/\1>|<(.*) \/>24、匹配空行:\n[\s| ]*\r25、提取信息中的网络链接:(h|H)(r|R)(e|E)(f|F) *= *('|")?(\w|\\|\/|\.)+('|"| *|>)?26、提取信息中的邮件地址:\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*27、提取信息中的图片链接:(s|S)(r|R)(c|C) *= *('|")?(\w|\\|\/|\.)+('|"| *|>)?28、提取信息中的IP地址:(\d+)\.(\d+)\.(\d+)\.(\d+)29、提取信息中的中国手机号码:(86)*0*13\d{9}30、提取信息中的中国固定电话号码:(\(\d{3,4}\)|\d{3,4}-|\s)?\d{8}31、提取信息中的中国电话号码(包括移动和固定电话):(\(\d{3,4}\)|\d{3,4}-|\s)?\d{7,14}32、提取信息中的中国邮政编码:[1-9]{1}(\d+){5}33、提取信息中的浮点数(即小数):(-?\d*)\.?\d+34、提取信息中的任何数字:(-?\d*)(\.\d+)?35、IP:(\d+)\.(\d+)\.(\d+)\.(\d+)36、电话区号:/^0\d{2,3}$/37、腾讯QQ号:^[1-9]*[1-9][0-9]*$38、帐号(字母开头,允许5-16字节,允许字母数字下划线):^[a-zA-Z][a-zA-Z0-9_]{4,15}$匹配中文字符的正则表达式:[\u4e00-\u9fa5]匹配双字节字符(包括汉字在内):[^\x00-\xff]匹配空行的正则表达式:\n[\s| ]*\r匹配HTML标记的正则表达式:/<(.*)>.*<\/\1>|<(.*) \/>/ 匹配首尾空格的正则表达式:(^\s*)|(\s*$)匹配Email地址的正则表达式:\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*匹配网址URL的正则表达式:^[a-zA-z]+://(\\w+(-\\w+)*)(\\.(\\w+(-\\w+)*))*(\\?\\S *)?$匹配帐号是否合法(字母开头,允许5-16字节,允许字母数字下划线):^[a-zA-Z][a-zA-Z0-9_]{4,15}$匹配国内电话号码:(\d{3}-|\d{4}-)?(\d{8}|\d{7})?匹配腾讯QQ号:^[1-9]*[1-9][0-9]*$下表是元字符及其在正则表达式上下文中的行为的一个完整列表:\将下一个字符标记为一个特殊字符、或一个原义字符、或一个后向引用、或一个八进制转义符。

正则表达式语法例子

正则表达式语法例子

正则表达式语法例子正则表达式是一种用来匹配字符串的模式。

它使用特殊的语法元字符来匹配字符串中的字符,可以用来搜索、替换和检查文本。

下面是几个常见的正则表达式语法例子:1.^(正则表达式) - 匹配开头位置的字符串。

例如,"^abc"将匹配"abcdefg"中的"abc"。

2.$(正则表达式) - 匹配结尾位置的字符串。

例如,"def$"将匹配"abcdefg"中的"def"。

3.(正则表达式) - 匹配任何位置的字符串。

例如,"(abc)"将匹配"abcdefg"中的"abc"。

4.*(正则表达式) - 匹配零个或多个字符。

例如,"a.*c"将匹配"abcdefg"中的"ac"。

5.(正则表达式){n} - 匹配n个字符。

例如,"a{2}"将匹配"abcdefg"中的"ab"。

6.[0-9] - 匹配数字字符。

例如,"[0-9]"将匹配"1234567"中的"1"、"2"、"3"、"4"、"5"、"6"和"7"。

7.[a-zA-Z] - 匹配所有字母字符。

例如,"[a-zA-Z]"将匹配"abcABC"中的"a"、"b"、"c"、"A"、"B"和"C"。

正则表达式150种表达方式

正则表达式150种表达方式

正则表达式150种表达方式1、删除所有数字。

只要查找:\d就OK。

为了不留空行:替换处:\d2、删除所有英文字母。

只要查找:\a就OK。

为了不留空行:替换处:\d3、删除除换行符以外的所有。

只要查找:. 为了不留空行:替换处:\d4、既删除英文字母又删除数字。

只要查找:\w。

为了不留空行:替换处:\d5、删除数字加字母加等于(如:3a=或3zz=)只要查找:\d+\a+\=。

为了不留空行:替换处:\d6、删除换行。

只要查找:$。

替换处:\d(还原查找:\a+=\f。

替换:\0\n)。

如在换行后加一空格,查找:(\a)$。

替换:\0 \d。

7、删除空行只要查找:^$。

为了不留空行:替换处:\d8、删除首尾空格。

只要查找:^\s*|\s*$就OK9、删除行前数字及顿号。

只要查找:\d+、替换为空10、删除末尾标点符号。

只要查找:\P+$|\P+\s+$,“|”前面是没有空格的,“|”后面有空格,P后的加是为了……而用的。

11、删除末尾空格。

只要查找:\s+$。

替换为空。

12、删除第一个字如:“的我们”中的“的”只要查找:^\的。

13、删除第几个字。

查找:查找:^().(.+)。

替换:\1\2。

去掉前面的拼音:查找:^\a+替换为空。

第一个括号里可加“.”且可变。

14、删含的。

查:.*的.*替:\d。

的头查:.*=的.*替:\d。

的尾查:\a.*\c.*的$替:\d(留它不匹配)●删非的行查:^[^的]+$替:\d15、删除几码以上的码查:^(...)...替:\1。

删第几位码。

查:^(...).(.+)替:\1\2(变成\1,\2则其位则改成,了)首括号的.可变。

16、删除各类型的几字词,但必须是码前词后或纯词。

三字词:查找:^\~f{}\f{3}$替换:\d。

替换:\d “3”可以改。

17、删除11字词及其以上的词条查找(自定义格式):\a{}\=(\c|\P|\p){11,}。

替换:\d。

11可改。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1. 平时做网站经常要用正则表达式,下面是一些讲解和例子,仅供大家参考和修改使用:2. "^\d+$"//非负整数(正整数+ 0)3. "^[0-9]*[1-9][0-9]*$"//正整数4. "^((-\d+)|(0+))$"//非正整数(负整数+ 0)5. "^-[0-9]*[1-9][0-9]*$"//负整数6. "^-?\d+$"//整数7. "^\d+(\.\d+)?$"//非负浮点数(正浮点数+ 0)8. "^(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*))$"//正浮点数9. "^((-\d+(\.\d+)?)|(0+(\.0+)?))$"//非正浮点数(负浮点数+ 0)10. "^(-(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*)))$"//负浮点数11. "^(-?\d+)(\.\d+)?$"//浮点数12. "^[A-Za-z]+$"//由26个英文字母组成的字符串13. "^[A-Z]+$"//由26个英文字母的大写组成的字符串14. "^[a-z]+$"//由26个英文字母的小写组成的字符串15. "^[A-Za-z0-9]+$"//由数字和26个英文字母组成的字符串16. "^\w+$"//由数字、26个英文字母或者下划线组成的字符串17. "^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$"//email地址18. "^[a-zA-z]+://(\w+(-\w+)*)(\.(\w+(-\w+)*))*(\?\S*)?$"//url19. /^(d{2}|d{4})-((0([1-9]{1}))|(1[1|2]))-(([0-2]([1-9]{1}))|(3[0|1]))$/ // 年-月-日20. /^((0([1-9]{1}))|(1[1|2]))/(([0-2]([1-9]{1}))|(3[0|1]))/(d{2}|d{4})$/ // 月/日/年21."^([w-.]+)@(([[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.)|(([w-]+.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(]?)$"//Emil22. /^((\+?[0-9]{2,4}\-[0-9]{3,4}\-)|([0-9]{3,4}\-))?([0-9]{7,8})(\-[0-9]+)?$/ //电话号码23."^(d{1,2}|1dd|2[0-4]d|25[0-5]).(d{1,2}|1dd|2[0-4]d|25[0-5]).(d{1,2}|1dd|2[0-4]d|25[0-5]).(d{1,2}| 1dd|2[0-4]d|25[0-5])$" //IP地址24.25. 匹配中文字符的正则表达式:[\u4e00-\u9fa5]26. 匹配双字节字符(包括汉字在内):[^\x00-\xff]27. 匹配空行的正则表达式:\n[\s| ]*\r28. 匹配HTML标记的正则表达式:/<(.*)>.*<\/\1>|<(.*) \/>/29. 匹配首尾空格的正则表达式:(^\s*)|(\s*$)30. 匹配Email地址的正则表达式:\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*31. 匹配网址URL的正则表达式:^[a-zA-z]+://(\\w+(-\\w+)*)(\\.(\\w+(-\\w+)*))*(\\?\\S*)?$32. 匹配帐号是否合法(字母开头,允许5-16字节,允许字母数字下划线):^[a-zA-Z][a-zA-Z0-9_]{4,15}$33. 匹配国内电话号码:(\d{3}-|\d{4}-)?(\d{8}|\d{7})?34. 匹配腾讯QQ号:^[1-9]*[1-9][0-9]*$35.36.37. 元字符及其在正则表达式上下文中的行为:38.39. \ 将下一个字符标记为一个特殊字符、或一个原义字符、或一个后向引用、或一个八进制转义符。

40.41. ^ 匹配输入字符串的开始位置。

如果设置了RegExp 对象的Multiline 属性,^ 也匹配’\n’或’\r’之后的位置。

42.43. $ 匹配输入字符串的结束位置。

如果设置了RegExp 对象的Multiline 属性,$ 也匹配’\n’或’\r’之前的位置。

44.45. * 匹配前面的子表达式零次或多次。

46.47. + 匹配前面的子表达式一次或多次。

+ 等价于{1,}。

48.49. ? 匹配前面的子表达式零次或一次。

? 等价于{0,1}。

50.51. {n} n 是一个非负整数,匹配确定的n 次。

52.53. {n,} n 是一个非负整数,至少匹配n 次。

54.55. {n,m} m 和n 均为非负整数,其中n <= m。

最少匹配n 次且最多匹配m 次。

在逗号和两个数之间不能有空格。

56.匹配中文字符的正则表达式:[u4e00-u9fa5]评注:匹配中文还真是个头疼的事,有了这个表达式就好办了匹配双字节字符(包括汉字在内):[^x00-xff]评注:可以用来计算字符串的长度(一个双字节字符长度计2,ASCII字符计1)匹配空白行的正则表达式:s*评注:可以用来删除空白行匹配HTML标记的正则表达式:<(S*?)[^>]*>.*?</1>|<.*? />评注:网上流传的版本太糟糕,上面这个也仅仅能匹配部分,对于复杂的嵌套标记依旧无能为力匹配首尾空白字符的正则表达式:^s*|s*$评注:可以用来删除行首行尾的空白字符(包括空格、制表符、换页符等等),非常有用的表达式匹配Email地址的正则表达式:w+([-+.]w+)*@w+([-.]w+)*.w+([-.]w+)*评注:表单验证时很实用匹配网址URL的正则表达式:[a-zA-z]+://[^s]*评注:网上流传的版本功能很有限,上面这个基本可以满足需求匹配帐号是否合法(字母开头,允许5-16字节,允许字母数字下划线):^[a-zA-Z][a-zA-Z0-9_]{4,15}$评注:表单验证时很实用匹配国内电话号码:d{3}-d{8}|d{4}-d{7}字串1评注:匹配形式如或匹配腾讯QQ号:[1-9][0-9]{4,}评注:腾讯QQ号从10000开始匹配中国邮政编码:[1-9]d{5}(?!d)评注:中国邮政编码为6位数字匹配身份证:d{15}|d{18}评注:中国的身份证为15位或18位匹配ip地址:d+.d+.d+.d+评注:提取ip地址时有用匹配特定数字:^[1-9]d*$//匹配正整数^-[1-9]d*$ //匹配负整数^-?[1-9]d*$ //匹配整数^[1-9]d*|0$//匹配非负整数(正整数+ 0)^-[1-9]d*|0$ //匹配非正整数(负整数+ 0)^[1-9]d*.d*|0.d*[1-9]d*$ //匹配正浮点数^-([1-9]d*.d*|0.d*[1-9]d*)$//匹配负浮点数^-?([1-9]d*.d*|0.d*[1-9]d*|0?.0+|0)$//匹配浮点数^[1-9]d*.d*|0.d*[1-9]d*|0?.0+|0$ //匹配非负浮点数(正浮点数+ 0)^(-([1-9]d*.d*|0.d*[1-9]d*))|0?.0+|0$//匹配非正浮点数(负浮点数+ 0)评注:处理大量数据时有用,具体应用时注意修正匹配特定字符串:^[A-Za-z]+$//匹配由26个英文字母组成的字符串字串4^[A-Z]+$//匹配由26个英文字母的大写组成的字符串^[a-z]+$//匹配由26个英文字母的小写组成的字符串^[A-Za-z0-9]+$//匹配由数字和26个英文字母组成的字符串^w+$//匹配由数字、26个英文字母或者下划线组成的字符串57. ? 当该字符紧跟在任何一个其他限制符(*, +, ?, {n}, {n,}, {n,m}) 后面时,匹配模式是非贪婪的。

非贪婪模式尽可能少的匹配所搜索的字符串,而默认的贪婪模式则尽可能多的匹配所搜索的字符串。

58.59. . 匹配除"\n" 之外的任何单个字符。

要匹配包括’\n’在内的任何字符,请使用象’[.\n]’的模式。

60. (pattern) 匹配pattern 并获取这一匹配。

61.62. (?:pattern) 匹配pattern 但不获取匹配结果,也就是说这是一个非获取匹配,不进行存储供以后使用。

63.64. (?=pattern) 正向预查,在任何匹配pattern 的字符串开始处匹配查找字符串。

这是一个非获取匹配,也就是说,该匹配不需要获取供以后使用。

65.66. (?!pattern) 负向预查,与(?=pattern)作用相反67.68. x|y 匹配x 或y。

69.70. [xyz] 字符集合。

71.72. [^xyz] 负值字符集合。

73.74. [a-z] 字符范围,匹配指定范围内的任意字符。

75.76. [^a-z] 负值字符范围,匹配任何不在指定范围内的任意字符。

77.78. \b 匹配一个单词边界,也就是指单词和空格间的位置。

79.80. \B 匹配非单词边界。

81.82. \cx 匹配由x指明的控制字符。

83.84. \d 匹配一个数字字符。

等价于[0-9]。

85.86. \D 匹配一个非数字字符。

等价于[^0-9]。

87.88. \f 匹配一个换页符。

等价于\x0c 和\cL。

89.90. \n 匹配一个换行符。

等价于\x0a 和\cJ。

91.92. \r 匹配一个回车符。

等价于\x0d 和\cM。

93.94. \s 匹配任何空白字符,包括空格、制表符、换页符等等。

等价于[ \f\n\r\t\v]。

95.96. \S 匹配任何非空白字符。

等价于[^ \f\n\r\t\v]。

97.98. \t 匹配一个制表符。

等价于\x09 和\cI。

相关文档
最新文档