手机版网站开发实例,wordpress 聚合页面,wordpress分享插件国内,案例网站正则表达式是由一系列元字符#xff08;Meta-characters#xff09;组成的模式#xff0c;用于定义搜索或替换文本的规则。元字符具有特殊含义#xff0c;用于指定搜索模式的结构。以下是一些常用的正则表达式元字符及其功能#xff1a;
字符匹配符
符号含义.匹配除 \r\…正则表达式是由一系列元字符Meta-characters组成的模式用于定义搜索或替换文本的规则。元字符具有特殊含义用于指定搜索模式的结构。以下是一些常用的正则表达式元字符及其功能
字符匹配符
符号含义.匹配除 \r\n以外的任何单个字符\d匹配数字字符\D匹配非数字字符\w匹配单词字符英文、数字、下划线、汉字\W匹配非单词字符#、、_\s匹配空白符包括换行和Tab\S匹配非空白符
案例
a...b 匹配文本中以a开头b结尾中间包含三个字符的字符串 例如aaaab、a123b\W\d\d 匹配文本中以1个非字符开头后跟两个数字的字符串 例如#12、?00
限定符Quantifier 限定符用于指定符号前面的字符和组合项连续出现的次数常用的限定字符如下
符号含义*指定字符重复0次或n次指定字符重复0次或n次?指定字符重复0次或1次{n}正好匹配n个字符或组合n是非负数{n,}匹配n个以上的字符或组合{n,m}匹配n-m个字符或女组合m大于n
案例
[123]*匹配文本中由123字符组成的字符串 例如123、11123、33\d 匹配文本中重复1次或多次数字https?匹配文本中的http或者https字符串\d{10}匹配文本中10个连续的数字\d{4,}匹配文本中连续4个或以上的数字^\d{1,6}$匹配文本中连续1-6个的数字
字符类Character Classes 用于匹配特定的字符集合。
符号含义[ ]可接收的字符列表[^]不可接受的字符列表-连字符
案例
[abc]匹配abc中任意一个字符[^0123456789] 匹配文本中数字以外的任意单个字符同[^\d][A-Z] 匹配任意单个大写字母[0-9a-z]匹配任意单个小写字母或数字[\w\W]匹配任意字符
转义符Escape Character 使特殊字符失去特殊意义被视为普通字符。
符号含义\随后的字符应该被解释为字面量字符
需要用到转义符的字符有.*()$/\?[]^{}当特殊字符是在[]中时不需要使用转义符
案例
0\.\d*[1-9]匹配一个小于0的小数
定位符Anchors 规定要匹配的字符串出现的位置比如目标字符串是在文本的开始或者结束位置。
符号含义\b匹配目标字符串的边界这里边界指的是子串之间的空格或者文本的前后边界\B匹配目标字符串的非边界^匹配输入字符开始的位置$匹配输入字符结束的位置
案例
\bHello\b 匹配文本位于开头和结尾位置的Hello 例如在Hello HelloWorld文本中只能匹配到第一个Hello^[abc] 匹配文本中以abc中的一个字符开头的字符串^\d\d\d\d\d\d$ 匹配文本是否是由六个数字组成的字符串 例如 123456、000000
分组符Grouping 字符分组多用于将多个字符重复主要通过使用小括号()来进行分组
符号含义()用于分组
案例
(\d{4})-(\d{2})-(\d{2}) 匹配一个日期格式如 YYYY-MM-DD并将年、月、日分别分组。
懒惰匹配符Non-greedy Quantifiers 正则表达式默认是采用贪婪匹配当正则表达式中包含重复的限定符时匹配尽可能多的字符。可以通过设置为懒惰匹配匹配尽可能少的字符。
符号含义?字符尽可能少地匹配
使用时与限定符号结合使用比如*?、{n,m}?尽可能少的去匹配。 案例
1\d*?3在匹配文本123123123时通过懒惰匹配会匹配到三个123\(.*?\)在匹配文本()()()()时通过懒惰匹配会匹配到四个括号
选择匹配符Choice Meta-characters 匹配某种字符串的时候是选择性的既可以匹配这个又可以匹配那个。
符号含义表示逻辑“或”用于选择多个选项
案例
(a|b)匹配字符a或者匹配字符b(ab)|(cd)匹配字符ab或者匹配字符cd