【问题标题】:PHP preg_match for ending tag结束标签的 PHP preg_match
【发布时间】:2011-06-20 18:58:54
【问题描述】:

我需要使用 preg_match 来检查一行是否以 /> 或 /> 结尾
我创建了一个函数,其中包含以下行

if (!preg_match('\/>$', $str)) {

但它不起作用,因为它带有这个错误

Warning: preg_match() [function.preg-match]: Delimiter must not be alphanumeric or backslash

我怎样才能让它工作?

【问题讨论】:

标签: php regex tags preg-match


【解决方案1】:

http://php.net/manual/en/regexp.reference.delimiters.php

在使用 PCRE 函数时,模式需要用分隔符括起来。定界符可以是任何非字母数字、非反斜杠、非空白字符。

例如,您可以使用|

if (!preg_match('|\/>$|', $str)) {

【讨论】:

    【解决方案2】:

    在 \ 和 > 之间添加了一个可选的空格。

    if (!preg_match('|\/ ?>$|', $str)) {
    

    【讨论】:

    • 谢谢 :D 我看到了,PHP 需要 |或类似的东西
    • -0.00001 没有完全回答所问的问题 - 提问者的问题是答案未明确提及的模式周围缺少分隔符。我承认答案对可选空间很有帮助。
    猜你喜欢
    • 1970-01-01
    • 2017-10-04
    • 1970-01-01
    • 1970-01-01
    • 2011-01-16
    • 2014-05-31
    • 1970-01-01
    • 1970-01-01
    • 2011-05-18
    相关资源
    最近更新 更多