加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

正则表达式基本知识

发布时间:2020-12-13 19:53:41 所属栏目:百科 来源:网络整理
导读:1、“.”为通配符,表示任何一个字符,例如:“a.c”可以匹配“anc”、“abc”、“acc”; 2、“[]”,在[]内可以指定要求匹配的字符,例如:“a[nbc]c”可以匹配“anc”、“abc”、“acc” ;但不可以匹配“ancc”,a到z可以写成[a-z],0到9可以写成[0-9]; 3
1、“.”为通配符,表示任何一个字符,例如:“a.c”可以匹配“anc”、“abc”、“acc”;

2、“[]”,在[]内可以指定要求匹配的字符,例如:“a[nbc]c”可以匹配“anc”、“abc”、“acc”

;但不可以匹配“ancc”,a到z可以写成[a-z],0到9可以写成[0-9];

3、数量限定符号,表示匹配次数(或者叫做长度)的符号:

包括:“*”——0次或者多次

“+”——1次或者多次

“?”——0次或者1次

“{n}”——匹配n次,n为整数

“{n,m}”——匹配从n到m之间的某个数的次数;n和m都是整数;

“{n,}”——匹配n到无穷次之间任意次数;

“{,m}”——匹配0到m之间任意次数;

他们放到匹配格式的后面:

例如:

电话号码:024-84820482,02484820482(假设前面3或者4位,后面7或者8位,并且中间的减号可有可无)

都是符合规定的,那么可以用如下格式来匹配:[0-9]{3,4}-?[0-9]{7,8};

注意:“”为转义字符,因为“-”在正则表达式用有代表一个范围的意义,例如:前面所说的[0-9],

所以它需要转义字符“”进行转义才可使用;

4、“^”为否符号,表示不想匹配的符号,例如:[^z][a-z]+可以匹配所有除“z”开头的以外的所有字

符串(长度大于2,因为“+”表示大于等于1的次数,从第二位开始都是小写英文字符);

如果^放到[]的外边则表示以[]开头的字符串;^[az][a-z]+表示a或者z开头的长度大于等于2的英文字符

串;

5、“|”或运算符,例如:a[n|bc|cb]c可以匹配“abcc”,“anc”,“acbc”;

6、“$”以它前面的字符结尾的;例如:ab+$就可以被“abb”,“ab”匹配;

7、一些简单表示方法:

d表示[0-9];D表示[^0-9];w表示[A-Z0-9];W表示[^A-Z0-9];s表示[tnrf],就是空格字符包括tab

,空格等等;S表示[^tnrf],就是非空格字符;

8、常用的匹配:

匹配中文字符:“[u4e00-u9fa5]”;

匹配双字节字符(包括汉字在内):“[^x00-xff]”;

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

匹配HTML标记的正则表达式:“/.*|/”;

匹配首尾空格的正则表达式:“(^s*)|(s*$)”;

匹配非负整数(正整数+0):“^d+$”;  

匹配正整数:“^[0-9]*[1-9][0-9]*$”;

匹配非正整数(负整数+0):“^((-d+)|(0+))$”;

匹配负整数:“^-[0-9]*[1-9][0-9]*$”;

匹配整数:“^-?d+$”;

匹配非负浮点数(正浮点数+0):“^d+(.d+)?$”

匹配正浮点数:“^(([0-9]+.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*.[0-9]+)|([0-9]*[1-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-9]*[1-9][0-9]*)))$  //匹配

负浮点数

匹配浮点数:“^(-?d+)(.d+)?$”;

匹配由数字、26个英文字母或者下划线组成的字符串:“^w+$”;

匹配email地址:“^[w-]+(.[w-]+)*@[w-]+(.[w-]+)+$”;

匹配url:“^[a-zA-z]+://匹配(w+(-w+)*)(.(w+(-w+)*))*(?S*)?$”

1、“.”为通配符,表示任何一个字符,例如:“a.c”可以匹配“anc”、“abc”、“acc”;
2、“[]”,在[]内可以指定要求匹配的字符,例如:“a[nbc]c”可以匹配“anc”、“abc”、“acc”
;但不可以匹配“ancc”,0到9可以写成[0-9];...

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读