当前位置: 首页 > 面试题库 >

PHP正则表达式定界符,有什么意义?

柯栋
2023-03-14
问题内容

为什么PHP正则表达式具有周围的定界符?如果将任何模式修饰符作为参数传递给正在使用的任何函数,似乎会更加清楚。


问题答案:

没有技术原因必须如此。

如注释中所述,底层库不需要将标志作为正则表达式的一部分进行传递-实际上,扩展名必须剥离这些标志并将其作为单独的参数传递。

似乎原始的实现者正试图使其看起来像grep / sed / awk / perl / etc,以便那些使用这些工具的程序员更加熟悉。



 类似资料:
  • 问题内容: 我在以下正则表达式中找到了它: 它将方括号(及其内容)与嵌套方括号匹配。 问题答案: 是一个字符类,表示除和以外的所有字符。 您可以避免转义和特殊字符,因为它对于PCRE(函数中使用的正则表达式引擎)不是模棱两可的。 由于在PCRE中不正确,因此正则表达式解析的唯一方法是在字符类内部,该字符类稍后将关闭。与以下相同。它不能重新打开字符类内的字符类(POSIX字符类除外)。然后最后一个清

  • 我肯定这已经张贴之前,但我有麻烦找到一个答案。

  • 问题内容: 我在使用正则表达式时遇到了一些麻烦。 这是我的代码 我运行它并得到: 警告:preg_match()[function.preg-match]:在以下位置找不到结尾的定界符“ ^” 问题答案: PHP regex字符串需要定界符。尝试: 另外,请注意,您使用的是小写字母o,而不是零。另外,如果您只是进行验证,则不需要捕获组,并且可以将正则表达式简化为。

  • Python的< code>docutils模块中的一个组件在机器中使用了下面的正则表达式,该表达式用于将带有星号的文本转换为斜体文本: 原始: 大多数人都知道拉丁语“及时行乐”是什么意思。 这是一个非常简单的模式:如果前面没有空格、换行符或空字符,请匹配星号。我想知道的是将空的 unicode 字符串 () 附加到模式会得到什么?它被附加到文档中也发现的许多其他模式中,但我不知道它对给定的文本是

  • 和?我试着在谷歌上搜索,但没有成功。

  • 问题内容: 以下代码是众所周知的将重音符转换为纯文本的代码: 我用这种方法代替了“手工制作”方法,但是我需要了解replaceAll的“ regex”部分 1)什么是“ InCombiningDiacriticalMarks”? 2)它的文档在哪里?(和类似的?) 谢谢。 问题答案: 是Unicode块属性。在JDK7中,您将可以使用两部分表示法来编写它,这对于读者来说可能更清楚。它在UAX#44