正则表达式元字符以及模式修正符
2018-03-22 20:24
260 查看
<?php function reg($reg, $str) { preg_match($reg, $str, $res); var_dump($res); echo '<br>'; } //可以匹配回车 reg("/\n/", ' '); //可以匹配空 reg("/\s/", ' '); //+ 号 匹配前面的字符1次或者多次 reg("/test+/", 'testt'); //. 代表任意一字符,不能匹配\n reg("/./", "\n"); //^以某某开头 reg('/^a/', 'ab'); //* 代表前面的字符可以出现0到1次和多次 reg('/a*/', 'aaaaaaa'); //* 代表前面的字符可以出现1次和多次 reg("/a+/", ""); //? 代表前面的字符可以出现0次和1次 reg("/a?/", "bcd"); //{n} 代表前面原子只能匹配n次 reg("/a{1}/", "aa"); //{n} 代表前面原子至少匹配n次 reg("/a{2,}/", 'aa'); //{n,m} reg("/a{2,5}/", "aaaaaa"); //| 两边出来一个就好 reg("/cn|com|top/", "tops"); //$ 以..结尾 reg('/cn|com|top$/', 'tops'); // () 提高优先级 ()内的内容表示的是一个子表达式, // ()本身不匹配任何东西,也不限制匹配任何东西, // 只是把括号内的内容作为同一个表达式来处理, // 例如(ab){1,3},就表示ab一起连续出现最少1次, // 最多3次。如果没有括号的话,ab{1,3},就表示a, // 后面紧跟的b出现最少1次,最多3次 reg("/(ab){1,3}c/", 'abc'); /* 模式中的\b标记一个单词边界,所以只有独立的单词"web"会被匹配,而不会匹配webc*/ reg("/\bweb\bc/", "webc"); //[^abc] 不包括abc reg('/[^abcd]/', 'abcadfadf'); echo '<hr>'; /******************************* 模式修正符号 **************************/ //模式修正符,i不区分大小写 reg("/test+/i", 'tesTT'); //修正符号m,将匹配字符串看成是多行而不是默认的单行,中间不能有空格。。。。 reg("/^abc/m", "ab aaa abc"); //修正符号s,把字符串看做是一行 .匹配不了\n reg("/a.*c/s", "abjalkj\nc"); //x 忽略空格 reg("/a c/x", 'ac'); //贪婪 reg('/<a href=".*">/', '<a href="a.php">bbb</a><a href="c.php">aaaa</a>'); //非贪婪 reg('/<a href=".*">/U', '<a href="a.php">bbb</a><a href="c.php">aaaa</a>'); //非贪婪 reg(< a048 span class="hljs-string">'/<a href=".*?">/', '<a href="a.php">bbb</a><a href="c.php">aaaa</a>');
相关文章推荐
- 正则表达式三 (修正模式)
- 随笔:linux中正则表达式BRE模式下的特殊匹配字符
- 正则表达式元字符
- (转)JS正则表达式元字符
- js中的基本正则以及过滤特殊字符
- 短信签名的正则验证,以及汉字,任意字符付的判断
- 正则表达式模式修正符(/ies)
- C#中使用正则的贪婪和非贪婪模式,以及分组
- 正则表达式中模式修正符作用详解(i、g、m、s、x、e)
- 正则表达式元字符总结
- Python支持的正则表达式元字符和语法
- 正则表达式---模式修正符
- 正则表达式模式修正符(/ies)
- 正则表达式中模式修正符作用详解(i、g、m、s、x、e)
- 更多的正则表达式元字符
- Java正则表达式中各种字符以及转义字符的解释说明
- 正则表达式非贪婪模式和取反字符类的使用区别
- 正则表达式以及字符处理命令
- 随笔:linux中正则表达式BRE模式下的特殊匹配字符
- linux基础--grep以及模式正则表达式