标签:
可以在下面的网上在线测试:http://regexpal.com/
资料
^:开始位置
$:结束位置
+:匹配前面的子表达式一次或多次(大于等于1次)。例如,“zo+”能匹配“zo”以及“zoo”,但不能匹配“z”。+等价于{1,}。
*:匹配前面的子表达式零次或多次(大于等于0次)。例如,zo*能匹配“z”,“zo”以及“zoo”。*等价于{0,}。
\d+:几位数字,+就是几位
{n}:n是一个非负整数。匹配确定的n次。例如,“o{2}”不能匹配“Bob”中的“o”,但是能匹配“food”中的两个o。
{n,}:n是一个非负整数。至少匹配n次。例如,“o{2,}”不能匹配“Bob”中的“o”,但能匹配“foooood”中的所有o。“o{1,}”等价于“o+”。“o{0,}”则等价于“o*”。
{n,m}:m和n均为非负整数,其中n<=m。最少匹配n次且最多匹配m次。例如,“o{1,3}”将匹配“fooooood”中的前三个o。“o{0,1}”等价于“o?”。请注意在逗号和两个数之间不能有空格。
?:非贪婪模式,当该字符紧跟在任何一个其他限制符(*,+,?,{n},{n,},{n,m})后面时,匹配模式是非贪婪的。非贪婪模式尽可能少的匹配所搜索的字符串,而默认的贪婪模式则尽可能多的匹配所搜索的字符串。例如,对 于字符串“oooo”,“o+?”将匹配单个“o”,而“o+”将匹配所有“o”。
如:^12-?$匹配所有以12开头,后面加或是不或-号的字符。
.点:匹配除“\r\n”之外的任何单个字符。要匹配包括“\r\n”在内的任何字符,请使用像“[\s\S]”的模式
常用正则表达式
匹配中文字符的正则表达式: [\u4e00-\u9fa5]
匹配双字节字符(包括汉字在内):[^\x00-\xff]
匹配首尾空格的正则表达式:(^\s*)|(\s*$)
匹配IP地址的正则表达式:(\d+)\.(\d+)\.(\d+)\.(\d+),去括号也行
两位小数:(^\d+\.\d{2}$)|(\d+)
正整数:^[0-9]*$或^\d+$
手机号码:我写的为^1[3,5,8][0-9]{9}$,
{n}
标签:
原文地址:http://www.cnblogs.com/shengyu-kmust/p/4499688.html