PHP 5 正则表达式(PCRE) 参考手册
正则表达式(regular expression)描述了一种字符串匹配的模式,可以用来检查一个串是否含有某种子串、将匹配的子串做替换或者从某个串中取出符合某个条件的子串等
如果想要了解更多更多正则表达式的知识,可以访问我们的 正则表达式 基础教程
PHP 通过 PCRE 扩展来支持正则表达式的匹配工作
PHP PCRE 函数列表
函数 | 描述 |
---|---|
preg_filter | 执行一个正则表达式搜索和替换 |
preg_grep | 返回匹配模式的数组条目 |
preg_last_error | 返回最后一个PCRE正则执行产生的错误代码 |
preg_match_all | 执行一个全局正则表达式匹配 |
preg_match | 执行一个正则表达式匹配 |
preg_quote | 转义正则表达式字符 |
preg_replace_callback_array | 执行一个正则表达式搜索并且使用一个回调进行替换 |
preg_replace_callback | 执行一个正则表达式搜索并且使用一个回调进行替换 |
preg_replace | 执行一个正则表达式的搜索和替换 |
preg_split | 通过一个正则表达式分隔字符串 |
PHP PREG 常量
常量 | 描述 | PHP 版本 |
---|---|---|
PREG_PATTERN_ORDER | 结果按照"规则"排序,仅用于preg_match_all(), 即$matches[0]是完整规则的匹配结果, $matches[1]是第一个子组匹配的结果,等等 | since |
PREG_SET_ORDER | 结果按照"集合"排序,仅用于preg_match_all(), 即$matches[0]保存第一次匹配结果的所有结果(包含子组)信息, $matches[1]保存第二次的结果信息,等等 | |
PREG_OFFSET_CAPTURE | 查看PREG_SPLIT_OFFSET_CAPTURE的描述 | 4.3.0 |
PREG_SPLIT_NO_EMPTY | 这个标记告诉 preg_split() 进返回非空部分 | |
PREG_SPLIT_DELIM_CAPTURE | 这个标记告诉 preg_split() 同时捕获括号表达式匹配到的内容 | 4.0.5 |
PREG_SPLIT_OFFSET_CAPTURE | 如果设置了这个标记,每次出现的匹配子串的偏移量也会被返回。注意,这会改变返回数组中的值, 每个元素都是由匹配子串作为第0个元素,它相对目标字符串的偏移量作为第1个元素的数组。这个 标记只能用于 preg_split() |
4.3.0 |
PREG_NO_ERROR | 没有匹配错误时调用 preg_last_error() 返回 | 5.2.0 |
PREG_INTERNAL_ERROR | 如果有PCRE内部错误时调用 preg_last_error() 返回 | 5.2.0 |
PREG_BACKTRACK_LIMIT_ERROR | 如果调用回溯限制超出,调用preg_last_error()时返回 | 5.2.0 |
PREG_RECURSION_LIMIT_ERROR | 如果递归限制超出,调用preg_last_error()时返回 | 5.2.0 |
PREG_BAD_UTF8_ERROR | 如果最后一个错误时由于异常的utf-8数据(仅在运行在 UTF-8 模式正则表达式下可用)。 导致的,调用preg_last_error()返回 | 5.2.0 |
PREG_BAD_UTF8_OFFSET_ERROR | 如果偏移量与合法的urf-8代码不匹配(仅在运行在 UTF-8 模式正则表达式下可用)。 调用preg_last_error()返回 | 5.3.0 |
PCRE_VERSION | PCRE版本号和发布日期(比如: "7.0 18-Dec-2006") | 5.2.4 |