`

PHP正则表达式的修饰符详细解释

    博客分类:
  • PHP
阅读更多


i (PCRE_CASELESS)
如果设置了这个修饰符, 则表达式不区分大小写.
m (PCRE_MULTILINE)
默认的, PCRE 认为目标字符串值是单行字符串 (即使他确实包含多行). 行开始标记 (^) 只匹配字符串的开始部分, 而行结束标记 ($) 只匹配字符串的尾部,或者一个结束行(除非指定 E 修饰符). 这个和 Perl 里面一样.
如 果设定了这个修饰符, 行开始和行结束结构分别匹配在目标字符串任何新行的当前位置后面的或者以前的, 和每一个开始和结束一样. 这个等于 Perl 里面的 /m 修饰符. 如果目标字符串没有 "n" 字符, 或者模式里没有 ^ 或 $ ,这个修饰符不起作用.

s (PCRE_DOTALL)
如果设置这个修饰符, 模式里的一个"点"将匹配所有字符, 包括换行. 没有他, 换行将被排除在外. 这个修饰符等同于 Perl 里面的 /s 修饰符. 一个相反的类型,例如 [^a] 将总是匹配换行字符,而不管这个修饰符的限制.

x (PCRE_EXTENDED)
如果设置这个修饰符, 模式里面的空格数句将会被全部忽略,除非用转义符或者一个字符的内部类型,还有所有字符类型外的未转义的 # 号之间的也被忽略. 这个等同于 Perl 里面的 /x
修饰符, 这样可以复杂的模式里面加入注释. 注意,只适用于数据字符. 空格字符将不会在指定的模式字符指定顺序中出现。

e
如果设置这个修饰符, preg_replace() 将在替换值里进行正常的涉及到 的替换, 等同于在 PHP 代码里面一样, 然后用于替换搜索到的字符串.

只在 preg_replace() 里使用这个修饰符; 其它 PCRE 函数忽略他.
A (PCRE_ANCHORED)
如果设置这个修饰符, 模式被强制为锚(anchored), 也就是说, 他将值匹配搜索字符串的开始. 这个效果可以通过恰当的模式结构自身来实现,那是在 Perl 里面的唯一途径.

D (PCRE_DOLLAR_ENDONLY)
如果设置这个修饰符,则模式里的 $ 修饰符将仅匹配目标字符串里的尾部. 没有这个修饰符, $ 字符也匹配新行的尾部 (但是不再新行的前面). 如果设置了 m 修饰符则忽略这个修饰符. 在 Perl 里面没有类似的.

S
如果一个模式将被使用多次, 使用长些时间分析他来来提高匹配的速度. 如果使用这个修饰符,则进行额外的分析. 目前, 研究模式仅用于非锚模式,没有一个固定的开始字符.

U (PCRE_UNGREEDY)
这个修饰符翻转数量的 "greediness" ,使得默认不被 greedy,但是如果你紧跟问号(?),则可以 greedy. 这个和 Perl 不兼容. 这个也可以通过在模式里面的(?U) 修饰符得到.

X (PCRE_EXTRA)
这个修饰符打开额外的功能,这些和 Perl 不兼容. 任何模式里面的后面带字符但没有特殊意义的反斜杠将引起错误, 从而储备这些联合用于将来的扩充. 默认的, 在 Perl 里面,
反斜杠后面有无意义的字符被当成正常的 literal. 目前还没有其他的控制特征
转载请注明:本文来自HUGESKY CMS! (http://www.hugesky.com) 详细出处参考:http://www.hugesky.com/htm/zhishi/phpzhishiku/showarticle_id2597_page1.htm 
分享到:
评论

相关推荐

    PHP 常用的正则表达式例子

    2. **正则表达式修饰符** - i:使匹配对大小写不敏感。 - m:多行模式,使得^和$可以匹配每一行的开头和结尾。 - s:使.匹配包括换行符在内的所有字符。 - g:全局匹配,找到所有匹配,而不仅仅是第一个。 3. *...

    正则表达式PHPChina PHP进阶学习

    正则表达式(Regular Expression)是编程领域中用于模式匹配和文本处理的一种强大的工具,尤其在PHP中,正则表达式被广泛应用于数据验证、文本提取、字符串替换等多个场景。PHPChina的“PHP进阶学习”系列教程针对这...

    正则表达式模式修饰符

    下面详细讲解一些常见的正则表达式模式修饰符: 1. i (PCRE_CASELESS):忽略大小写匹配标志。当这个修饰符被设置时,正则表达式中的字母字符将不区分大小写,例如,模式 /abc/i 可以匹配 "ABC"、"aBc"、"abC" 等。 ...

    精通正则表达式(第3版).pdf

    7. 正则表达式的修饰符:修饰符用来修改正则表达式的搜索行为,例如,全局搜索(g)、不区分大小写(i)、多行搜索(m)等。 8. 正则表达式的贪婪与非贪婪模式:在正则表达式中,量词(如*、+、?)默认是贪婪的,它...

    正则表达式在线测试 v1.0

    7. **修饰符**:在正则表达式末尾可以添加修饰符来改变其行为,如`i`表示忽略大小写,`m`使`^`和`$`匹配每一行的开始和结束,`g`表示全局匹配。 8. **反向引用**:在PHP中,`\1`到`\9`可以用来引用前面捕获的组。 ...

    PHP正则表达式快速学习及PHP常用正则表达式大全实用文档.doc

    总结起来,PHP正则表达式是一种强大的文本处理工具,它可以帮助开发者高效地进行字符串的匹配、替换和分割操作。通过理解元字符、定位符、量词、分组等概念,以及熟悉PHP提供的相关函数,开发者可以充分利用正则...

    正则表达式

    2.2.1. 界定符:`//`用来包围正则表达式。 2.2.2. 原子:基本的匹配单元,如字母、数字等。 2.2.3. 元字符:如`\d`(数字)、`\s`(空白符)、`\w`(字母数字下划线)等,它们具有特殊含义,用于扩展原子的功能。 ...

    PHP正则表达式快速学习及PHP常用正则表达式大全.pdf

    在深入探索PHP正则表达式的世界之前,首先要明确正则表达式的作用和意义。正则表达式是一种强大的文本处理工具,用于在字符串中搜索、匹配、查找和替换文本。它的灵活性和强大功能使其成为处理字符串不可或缺的部分...

    精通正则表达式~~~

    精通正则表达式第三版 搜集于网络 前言..........I 第1章:正则表达式入门.... 1 解决实际问题... 2 作为编程语言的正则表达式... 4 以文件名做类比... 4 以语言做类比... 5 正则表达式的知识框架... 6 对于...

    正则表达式单行、多行模式简介(使用说明)

    目前常用正则表达式都有该使用选项,如:javascript 正则表达式,一般是:”/正则表达式匹配字符/修饰符“ ,最后一个”/” 后面是修饰符。然后,php也是类似的,c#,python等,一般调用正则表达式的匹配函数,都有...

    PHP 正则表达式.rar

    “PHP 正则表达式.pdf”这份文档很可能涵盖了正则表达式的基础知识,包括基本语法、元字符、修饰符、各种匹配操作以及PHP中的具体应用示例。通过阅读这份文档,开发者可以深入理解并运用PHP的正则表达式功能,提升...

    PHP和正则表达式的关系

    - 修饰符:正则表达式可以使用修饰符来改变其行为,如`i`使匹配不区分大小写,`g`使匹配全局而非仅第一次,`m`使`^`和`$`分别匹配每一行的开头和结尾。 - 分组:使用圆括号`()`可以创建捕获组,以便于在替换操作中...

    php常用正则表达式

    3. **正则表达式修饰符** - `i`: 忽略大小写。 - `m`: 多行模式,使`^`和`$`分别匹配每一行的开始和结束。 - `s`: 使`.`匹配包括换行符在内的任何字符。 - `x`: 扩展模式,允许正则表达式中包含注释。 4. **...

    正则表达式函数笔记.php

    php正则表达式笔记,本人手写的 //----正则匹配----- $p = '/example/' $str = "I am an example"; preg_match($p,$str); //如果$str中含有$p两个/中间的内容(内容不要求完全相同,要求为包含于关系),则返回真 //...

    正则表达式,掌握正则表达式

    - `php的正则表达式完全手册.doc`、`.pdf`应为全面的PHP正则表达式手册,提供了全面的参考信息和深入的解释。 通过学习和理解这些资料,你可以深入掌握正则表达式,并在PHP开发中灵活运用,提高代码的效率和质量。...

    PHP正则表达式学习资料

    例如,`/pattern/flags`,其中`pattern`是正则表达式,`flags`是可选的修饰符,如`i`表示不区分大小写,`m`使`^`和`$`分别匹配每一行的开始和结束,`g`全局匹配而非仅匹配第一次。 在实际应用中,PHP正则表达式常常...

    判断不同编码的正则表达式

    此正则表达式的解释如下: - `^`: 表示匹配字符串的起始位置。 - `[\x{4e00}-\x{9fa5}]`: 匹配中文汉字的Unicode范围。 - `A-Za-z0-9_`: 匹配大小写字母、数字和下划线。 - `]`: 表示结束字符集定义。 - `$`: 表示...

    精通正则表达式.pdf

    8. 正则表达式的模式修饰符: - `i` 使匹配不区分大小写。 - `g` 全局匹配,查找所有出现,而不仅仅是第一个。 - `m` 多行模式,使 `^` 和 `$` 分别匹配每一行的开始和结束。 9. 正则表达式引擎与实现: - PCRE...

Global site tag (gtag.js) - Google Analytics