`

preg_match 修饰符

    博客分类:
  • php
阅读更多


PHP的Perl兼容正则表达式函数也支持在Perl中不支持的其他修饰符, :

 
修饰符
意 义


/ regexp / i
不区分大小写的匹配

/ regexp / s
使句点( . )匹配任何字符,包括换行符( )

/ regexp / x
从模式中删除空白符和注释

/ regexp / m
使 ^ 匹配换行符 ( )之后的内容,美元符号($)匹配换行符 ( )之前的内容

/ regexp / e
如果替换字符串是PHP代码,使用eval()执行该代码来得到实际的替换字符串。


/ regexp / U
颠倒子模式的贪婪性; * 和 + 尽可能少地匹配而不是尽可能多。

/ regexp / u
把模式字符串当作UTF - 8编码对待

/ regexp / X
如果一个反斜杠之后跟着没有特殊意义的字符,将产生一个错误

/ regexp / A
把锚定位在字符串的开头就像模式中有 ^ 一样

/ regexp / D
使 $字符仅匹配一行的末尾

/ regexp / S
使表达式解析器更加小心地检查模式的结构,使得第二次运行时(如在一个循环中)加快速度



分享到:
评论

相关推荐

    preg-match绕过

    谨慎使用/e 修饰符:/e 修饰符允许在匹配时执行 PHP 代码,因此应该谨慎使用以避免安全漏洞。 避免使用用户输入拼接正则表达式:尽量不要将用户输入直接拼接到正则表达式中,以免造成安全风险。 使用辅助函数进行...

    php preg_match_all结合str_replace替换内容中所有img

    `isU`是修饰符,其中: - `i`:使匹配对大小写不敏感。 - `s`:使`.`匹配包括换行符在内的任何字符。 - `U`:使正则表达式采用懒惰匹配,即尽可能少地匹配字符。 `str_replace` 函数用于在字符串中替换所有出现的...

    php中preg_match的isU代表什么意思

    但如果加上 `U` 修饰符,变成 `/a+U/`,它只会匹配第一个 'a',因为非贪婪模式使得它尽可能少地匹配。 回到给出的例子,`/(.*)/isU` 中的 `isU` 分别代表: - `i`:忽略大小写。 - `s`:点号(.)匹配包括换行符...

    PHP中preg_match正则匹配中的/u、/i、/s含义

    在处理PHP字符串长度问题时,`preg_match` 可能不如 `strlen()` 函数直观,但如果要考虑Unicode字符,`strlen()` 可能无法正确计算,此时可以结合 `/u` 修饰符的正则表达式来计算字符串的实际长度,比如: ...

    php preg_match的匹配不同国家语言实例

    只有加上`u`修饰符,即`preg_match("/[\S\b]{2,32}/u", $string)`,`preg_match`才能按照Unicode编码正确处理字符串,并成功匹配包括中文、阿拉伯文、俄文和英文在内的多种语言。 由此可知,对于含有多种语言的字符...

    PHP preg_match的匹配多国语言的技巧

    在每个var_dump函数调用中,我们使用了正则表达式“/[\S\b]{2,32}/u”,其中的“[\S\b]”表示匹配非空白的字符,数量限定在2到32个之间,并且由于加上了“u”修饰符,因此可以正确地以Unicode编码进行匹配。...

    PHP常用正则表达式汇总

    三、正则表达式修饰符 1. `i`:使匹配不区分大小写。 2. `m`:多行模式,使`^`和`$`匹配每一行的开始和结束。 3. `s`:使`.`匹配包括换行符在内的所有字符。 4. `g`:全局匹配,找到所有匹配项,而非仅第一个。 四...

    php正则preg_replace_callback函数用法实例

    - `/i`:修饰符,表示不区分大小写。 ### 其他相关函数 - `preg_replace`:这是一个基础的正则替换函数,它直接将匹配到的部分替换为指定的新字符串。 - `preg_match`:用于检测字符串是否符合某个正则表达式模式...

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

    - 量词修饰符:除了已经提到的 `+`, `*`, 和 `?`,还有 `{n}`, `{n,}` 和 `{n,m}`,它们分别表示匹配前面的字符 n 次,至少 n 次,以及介于 n 和 m 次之间。 - 分组与反向引用:使用小括号 `()` 可以创建子模式...

    Function eregi is deprecated (解决方法)

    当你从`eregi`迁移到`preg_match`时,需要注意的是`eregi`中的模式匹配是不区分大小写的,所以在转换时,需要在`preg_match`的模式字符串前添加`/i`修饰符来实现不区分大小写的匹配。例如,`eregi('^test', $file)`...

    zzbdscs_php_

    此外,还有字符类(如`[abc]`匹配'a'、'b'或'c')和量词修饰符(如`{n}`匹配n次,`{n,}`匹配n次或更多次,`{n,m}`匹配n到m次)。 在实际应用中,正则表达式可以用于验证电子邮件地址、URL、电话号码格式,或者从...

    正则表达式概述

    这里`u`修饰符表示Unicode模式,`[\x{4e00}-\x{9fa5}]`表示匹配所有中文字符。 #### 八、环视(断言) 环视(或称为零宽度断言)是一种特殊的匹配技术,用于检查某个位置前后是否有特定的模式,但并不消耗字符。...

    PHP开发实战宝典第7章源码

    3. **正则表达式修饰符** - `i`:不区分大小写匹配。 - `m`:多行模式,`^`和`$`可以匹配每一行的开始和结束。 - `s`:点号`.`可以匹配换行符。 - `u`:Unicode模式,适用于处理多语言字符。 4. **高级技巧** ...

    php常用正则表达式

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

    PHP 正则表达式.rar

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

    php正则表达式

    在正则表达式的末尾,我们可以添加标志修饰符来改变匹配行为。例如,`i`使匹配变为大小写不敏感,`m`使`^`和`$`分别匹配每一行的开始和结束,`s`使`.`能够匹配包括换行在内的所有字符,`g`则用于全局匹配,不只匹配...

    正则表达式在PHP中的应用.pdf

    PCRE支持多种修饰符,如`i`(忽略大小写)、`m`(多行模式)和`g`(全局匹配)等。 4. 正则表达式的重要函数 - `preg_match`:检查字符串是否符合正则表达式模式,返回匹配成功与否的布尔值。 - `preg_match_all`...

Global site tag (gtag.js) - Google Analytics