php正则表达式使用方法整理集合符号,PHP正则表达式

php正则表达式使用方法整理集合符号,PHP正则表达式,php正则表达式使用方法整理集合

在这篇文章中,边肖与你分享了一篇关于php中常用正则表达式用法的文章。有兴趣的朋友可以参考一下,借鉴一下。

正则表达式经常被用来制作网站。下面是一些解释和例子,供你参考和修改:

匹配数字

\ d $ '//非负整数(正整数0)

[0-9]*[1-9][0-9]* $ '//正整数

((-\ d)|(0))$ '//不是正整数(负整数0)

-[0-9]*[1-9][0-9]* $ '//负整数

'^-?\d $'//整数

'^\d (\。\d)?$ '//非负浮点数(正浮点数0)

([0-9] \.[0-9] * [1-9] [0-9] *) | ([0-9] * [1-9] [0-9] * \.[0-9]) | ([0-9]

'^((-\d (\。\d)?)|(0 (\.0 )?))$ '//非正浮点数(负浮点数0)

(-([0-9] \.[0-9] * [1-9] [0-9] *) | ([0-9] * [1-9] [0-9] * \.[0-9]) | ([0]

'^(-?\d )(\。\d)?$ '//浮点数

匹配字母

[A-ZA-Z]$ '//由26个英文字母组成的字符串

[A-Z]$ '//由26个大写英文字母组成的字符串

[A-Z]$ '//由26个小写英文字母组成的字符串

[A-ZA-Z0-9]$ '//由数字和26个英文字母组成的字符串

\ w $ '//由数字、26个英文字母或下划线组成的字符串。

匹配实例

[\ w-] (\。[\ w-]) * @ [\ w-] (\。[\ w-])$ '/电子邮件地址

'^[a-zA-z] ://(\w (-\w )*)(\。(\ w(-\ w)*)*(\?\S*)?$'//url

/(d { 2 } | d { 4 })-((0([1-9]{ 1 })|(1[1 | 2])-([0-2]([1-9]{ 1 })|(3[0 |

/((0([1-9]{ 1 })|(1[1 | 2])/([0-2]([1-9]{ 1 })|(3[0 | 1])/(d { 2 } | d

'^([w-.] )@(([[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.)|(([w-]。)))([a-zA-Z]{2,4}|[0-9]{1,3})(]?)$ '//埃米尔

/^((\ ?[0-9]{2,4}\-[0-9]{3,4}\-)|([0-9]{3,4}\-))?([0-9]{7,8})(\-[0-9] )?$///电话号码

(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})

其他匹配

匹配汉字的正则表达式:[\u4e00-\u9fa5]

匹配双字节字符(包括汉字):[\ x00-\ xff]

匹配空行的正则表达式:\n[\s| ]*\r

匹配HTML标记的正则表达式:/(。*).*\ 1=''|(.*)/

匹配前导空格和尾随空格的正则表达式:(\ s *) | (\ s * $)

匹配电子邮件地址的正则表达式:\ 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] * $

元字符及其在正则表达式上下文中的行为:

\将下一个字符标记为特殊字符、原义字符、向后引用或八进制转义字符。

匹配输入字符串的起始位置。如果设置了RegExp对象的Multiline属性,它也会匹配“\n”或“\r”之后的位置。

$匹配输入字符串的结束位置。如果设置了RegExp对象的Multiline属性,$也会匹配“\n”或“\r”之前的位置。

*匹配前一个子表达式零次或多次。

匹配前一个子表达式一次或多次。相当于{1,}。

?匹配前一个子表达式零次或一次。相当于{0,1}。

{n} n为非负整数,匹配确定的n次。

{n,} n是匹配至少n次的非负整数。

{n,m} m和n都是非负整数,其中n=m,至少匹配n次,最多匹配m次。逗号和两个数字之间不能有空格。

?当该字符跟在任何其他限定符(*,{n}、{n}、{n,m}),匹配模式不贪心。非贪婪模式尽可能少地匹配搜索到的字符串,而默认贪婪模式尽可能多地匹配搜索到的字符串。匹配除' \n '以外的任何单个字符。若要匹配包括“\n”在内的任何字符,请使用类似“[。\n]'。

(模式)匹配模式,得到这个匹配。

(?pattern)在没有获得匹配结果的情况下匹配模式,也就是说,它是一个未获得的匹配,不会被存储以备后用。

(?=pattern)向前预览,在任何字符串匹配模式的开头匹配搜索字符串。这是一个非获取匹配,即这个匹配不需要被获取以备后用。

(?模式)负面预览,以及(?=pattern)有相反的效果。

X|y匹配x或Y.

[xyz]字符集。

[XYZ]负字符集。

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

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

\b匹配单词边界,即单词和空格之间的位置。

\B匹配非单词边界。

\cx匹配由x表示的控制字符。

\d匹配一个数字字符。相当于[0-9]。

\D匹配一个非数字字符。相当于[0-9]。

\f匹配分页符。相当于\x0c和\cL。

\n匹配一个换行符。相当于\x0a和\cJ。

\r匹配回车。相当于\x0d和\cM。

\s匹配任何空白字符,包括空格、制表符、分页符等。相当于[\f\n\r\t\v]。

\S匹配任何非空白字符。相当于[\ f \ n \ r \ t \ v]。

\ t匹配选项卡。相当于\x09和\cI。

\v匹配垂直制表符。相当于\x0b和\cK。

\w匹配任何单词字符,包括下划线。相当于“[A-Za-z0-9_]”。

\W匹配任何非单词字符。相当于“[a-za-z0-9 _]”。

\xn匹配n,其中n是十六进制转义值。十六进制转义值的长度必须是两位数。

\num匹配num,其中num是正整数。对获得的匹配的引用。

\n标识八进制转义值或向后引用。如果之前至少获得了n个子表达式,则n是向后引用。否则,如果n是一个八进制数(0-7),那么n就是一个八进制转义值。

\nm标识八进制转义值或向后引用。如果\nm前面至少有一个子表达式,则nm是向后引用。如果在\nm之前至少有n次提取,则n是一个后向引用,后面跟一个字m,如果不满足前面的条件,如果n和m都是八进制数(0-7),\nm将匹配八进制转义值nm。

\nml如果n是八进制数(0-3),并且m和l都是八进制数(0-7),则它匹配八进制转义值nml。

\ n匹配n,其中n是由四个十六进制数字表示的Unicode字符。

匹配汉字的正则表达式:[u4e00-u9fa5]

匹配双字节字符(包括汉字):[x00-xff]

匹配空行的正则表达式:n[s| ]*r

匹配HTML标记的正则表达式:/(。*).*| (.*)/

匹配前导空格和尾随空格的正则表达式:(s *) | (s * $)

匹配电子邮件地址的正则表达式:w ([-。]w )*@w ([-。]w )*。w ([-。]w )*

匹配URL的正则表达式:http://([w-]。)[w-] (/[w-。/?%=]*)?

使用正则表达式限制web表单中文本框的输入;

正则表达式只能输入汉字:onkeyup=' value=value . replace(/[u4e 00-u9fa 5]/g,' ')' onbeforepoast=' clipboard data . setdata(' text ',clipboard data.getdata ('text ')。替换(/[

正则表达式只能输入全角字符:onkeyup=' value=value . replace(/[uff 00-ufff]/g,' ')' onbeforepoast=' clipboard data . setdata(' text ',clipboard data.getdata ('text ')。替换(/[

只能用正则表达式输入数字:onkeyup=' value=value . replace(/[d]/g,' ')' onbeforepoast=' clipboard data . setdata(' text ',clipboard data.getdata ('text ')。替换(/[d]/g,)

只能用正则表达式输入数字和英文:onkeyup=' value=value . replace(/[w]/g,' ')' onbeforepast=' clipboard data . setdata(' text ',clipboard data.getdata ('text ')。替换(/[d]/g,)

一些常用的正则实例

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] * [0-9] * \ [0-9]) | ([0]

8.非正浮点数:((-\ d \\ d)?)|(0 (\.0 )?))$

9.负浮点数:(-(正浮点数正则表达式))$

10.英文字符串:[a-za-z] $

1.英文大写字符串:[A-Z] $

12.英文小写字符串:[A-Z] $

13.英文字符串:[A-ZA-Z0-9] $

14.带下划线的英文数字串:\ w $

15.电子邮件地址:[\ 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美元

21.双字节字符(包括汉字):\ x00-\ xff

22.匹配前导空格和尾随空格:(\ s *) | (\ s * $)(类似vbscript的trim函数)

23.匹配HTML标签:(。*).*\ 1=''|(.*)

24.匹配空行:\n[\s| ]*\r

25.从信息中提取网络链接:(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} $

39.中文、英文、数字和下划线:[\ u4e00-\ u9fa5 _ a-za-z0-9] $

附加

匹配汉字的正则表达式:[\u4e00-\u9fa5]

匹配双字节字符(包括汉字):[\ x00-\ xff]

匹配空行的正则表达式:\n[\s| ]*\r

匹配HTML标记的正则表达式:/(。*).*\ 1=''|(.*)/

匹配前导空格和尾随空格的正则表达式:(\ s *) | (\ s * $)

匹配IP地址的正则表达式:/(\d )\。(\d )\。(\d )\。(\d )/g //

匹配电子邮件地址的正则表达式:\ w ([-。] \ w) * @ \ w ([-。] \ w) * \。\ w ([-。] \ w) *

匹配URL的URL的正则表达式:http://(/[\w-] \。)[\w-] (/[\w-。/?%=]*)?

Sql语句:(选择|删除|删除|创建|更新|插入)。* $

以上是我们边肖整理的所有相关知识点。谢谢你的研究。如果您有任何补充,请联系边肖。

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: