PHP中关于正则的一些小笔记
2017-12-14 09:14
381 查看
正则是很多程序员入门最头疼的,我之前也是
在2011年之前,当时看着正则完全就是蒙的,于是写正则这样的任务全部扔给了浪浪来做...
事过这么多年,正则越用越顺手了
于是简单的记录一下常用的
2.原子
3.元字符
4.修正符
必须成对出现,有开始就有结束。不能用a-zA-Z0-9\
举些粟子:
所有可见不可见的字符就是原子
说明:我们见到的空格、回车、换行、0-9、A-Za-z、中文、标点符号、特殊符号全为原子。
这儿说下几个特殊标识的原子
这几个必须要记住,最好达到默写级别。记忆的时候成对记忆,\d是匹配一个0-9,那么\D 就是除了0-9以外的所有字符。
上面这几个特殊的你要不嫌麻烦,等价如下
这个时候,我们需要借助元字符来帮我们修饰原子,实现更多的功能
元字符及功能说明
例子后期慢慢加...
在2011年之前,当时看着正则完全就是蒙的,于是写正则这样的任务全部扔给了浪浪来做...
事过这么多年,正则越用越顺手了
于是简单的记录一下常用的
前言
1.界定符2.原子
3.元字符
4.修正符
界定符
界定符正如其名,就是定一个边界,边界已内的就是正则表达示。必须成对出现,有开始就有结束。不能用a-zA-Z0-9\
举些粟子:
/中间写正则/ 正确 $中间写正则$ 正确 %中间写正则% 正确 ^中间写正则^ 正确 @中间写正则@ 正确 (中间写正则) 错误 A中间写正则A 错误 特别注意\是转义字符,如果在以后正则表达示里面需要匹配/,则是/\//
原子
原子说白了就是需要匹配的内容。一个成立的正则表达示当中必须最少要有一个原子。所有可见不可见的字符就是原子
说明:我们见到的空格、回车、换行、0-9、A-Za-z、中文、标点符号、特殊符号全为原子。
这儿说下几个特殊标识的原子
\d 匹配一个0-9 \D 除了0-9以外的所有字符 \w a-zA-Z0-9_ \W 除了0-9A-Za-z_以外的所有字符 \s 匹配所有空白字符\n \t \r 空格 \S 匹配所有非空白字符 [ ] 指定范围的原子
这几个必须要记住,最好达到默写级别。记忆的时候成对记忆,\d是匹配一个0-9,那么\D 就是除了0-9以外的所有字符。
上面这几个特殊的你要不嫌麻烦,等价如下
\w [a-zA-Z0-9_] \W [^a-zA-Z0-9_] \d [0-9] \D [^0-9] \s [ \t\n\f\r] \S [^ \t\n\f\r]
元字符
在使用原子的时候,发现只能够匹配一个字符,可是要匹配多个字符就出现了问题。这个时候,我们需要借助元字符来帮我们修饰原子,实现更多的功能
元字符及功能说明
* 是代表匹配前面的一个原子,匹配0次或者任意多次前面的字符。 + 匹配一次或多次前面的一个字符 ? 前面的字符可有可无【可选】 有或没有 . 更标准一些应该把点算作原子。匹配除了\n以外的所有字符 | 或者。注:它的优先级最低了。 ^ 必须要以抑扬符之后的字符串开始 $ 必须要以$之前的字符结尾 \b 词边界 \B 非边界 {m} 有且只能出现m次 {n,m} 可以出现n到m次 {m,} 至少m次,最大次数不限制 () 改变优先级或者将某个字符串视为一个整体,匹配到的数据取出来也可以使用它
修正符
写在界定符末尾,例如/\w+/s
i 模式中的字符将同时匹配大小写字母.简称:不区分大小写 m 字符串视为多行 s 将字符串视为单行,换行符作为普通字符. x 将模式中的空白忽略. A 强制仅从目标字符串的开头开始匹配. D 模式中的美元元字符仅匹配目标字符串的结尾. U 匹配最近的字符串.
例子后期慢慢加...
相关文章推荐
- 本周笔记整理(关于php面向对象的一些基层知识点)
- PHP学习笔记--php教科书上关于正则表达式实例代码(摘要)
- 关于SQL中使用正则表达式的一些笔记
- 关于正则表达式的一些个人笔记
- 关于正则的一些笔记(长期更新)
- 关于php中一些字符串的一些面试题的总结
- linux中关于php和nginx用户权限的一些东西
- 关于php中的json_encode()和json_decode()函数的一些说明
- 细说PHP 一些字符串函数和正则表达…
- 关于PHP中异常和错误的笔记
- (易水寒)大一c语言实训小笔记 第一篇(关于自身所缺乏的一些小知识)
- 关于js基础的一些笔记
- 关于linux进程编程的一些笔记整理
- 关于RCP的一些整理笔记
- 关于ARP欺骗与MITM(中间人攻击)的一些笔记
- 《学习opencv》笔记——关于一些绘图的函数
- Github 上一些关于PHP的开源项目
- 关于puppet脚本的一些笔记
- 关于php 数组的一些感想心得
- 关于HTML+css 的一些学习笔记