PHP 正则表达式语法(一)
来源:互联网 发布:知乎精彩问题 编辑:程序博客网 时间:2024/05/19 12:28
http://www.5idev.com/p-php_regular_syntax_1.shtml
正则表达式简介
在某些应用中,往往有时候需要根据一定的规则来匹配(查找)确认一些字符串,如要求用户输入的 QQ 号码为数字且至少 5 位。用于描述这些规则的工具就是正则表达式。
最简单的匹配
最简单的匹配就是直接给定字符匹配。如用字符 a 去匹配 aabab ,则会匹配出 3 个结果,分别是字符串中的第 1,2 和第 4 个字符。这种匹配是最简单的情况,但往往实际处理中会复杂得多,如下面的 “QQ号码为数字且至少5位” ,其对应的正则表达式为:
^\d{5,}$
该正则表达式就描述需要确定的内容为至少 5 位以上的数字。我们来具体看看该表达式是怎么描述这一规则的:
- ^:表示匹配字符串的开始,也即该字符串是独立的开始而不是包含在某个字符串之内
- \d:表示匹配数字
- {5,}:表示至少匹配5位及以上
- $:表示匹配字符串的结束,也即该字符串是独立的结束
现在就很清楚了,该正则表达式综合起来就是匹配 5 位以上的连续数字,且有独立的开始和结束,对于少于 5 位的数字,或者不是以数字开始和结尾的如 a123456b 这样都是无效的。
从该例子可以看出,正则表达式是从左至右描述的。
同样,如果要匹配移动号码的正则表达式为:
^1\d{10}$
提示
由于对正则表达式的匹配结果,在很多情况下都不是那么确定,所以最好下载一些辅助工具用于测试正则表达式的匹配结果。这类工具如 Match Tracer、RegExBuilder 等,以及其他类似的工具也可。
元字符
在上面的例子中,^ 、\d 及 $ 等这些符号,代表了特定的匹配意义,我们称之为元字符,常用的元字符如下:
提示
- 当我们要匹配这些元字符的时候,我们需要用到字符转义功能,同样正则表达式里面用 \ 来表示转义,如要匹配 . 符号,则需要用 \. ,否则 . 会被解释成“除换行符外的任意字符”。当然,要匹配 \ ,则需要写成 \\
- 连续的数字或字母可以用 – 符号连接起来,如 匹配所有的小写字母,[1-5] 匹配 1 至 5 这 5 个数字
- PHP 正则表达式语法(一)
- PHP 正则表达式语法(一)
- PHP 正则表达式语法(一)
- PHP 正则表达式语法
- PHP正则表达式语法
- PHP 正则表达式语法
- PHP正则表达式语法
- PHP 正则表达式语法(二)
- PHP 正则表达式语法(二)
- 正则表达式语法讲解(一)
- php正则表达式基本语法
- php正则表达式基本语法
- PHP 正则表达式语法
- php正则表达式语法大全
- php正则表达式基本语法
- PHP正则表达式语法汇总
- PHP正则表达式语法汇总
- PHP正则表达式语法汇总
- 各种版本的linux下安装多个版本的NS2(比如ns2.31和ns2.27)中遇到的问题和解决方案
- 关于android上的定位
- Tomcat version 6.0 only supports J2EE 1.2, 1.3, 1.4, and Java EE 5 Web modules
- Yii直接执行sql语句的方法小结
- 如何让php在后台运行
- PHP 正则表达式语法(一)
- Query Optimizer Modes【每日一译】--2013-1-24
- MySQL数据库远程导入导出数据
- log4j详细配置
- centOS下yum安装配置samba
- Linux HAL (Hardware Abstraction Layer)的工作原理
- 查找数据库名,表名,字段名,字段属于某个表
- Java String类
- Undefined symbols for architecture i386: _OBJC_CLASS_$_ViewController 类未加载的蛋疼IDE BUG