【发布时间】:2015-09-04 21:11:44
【问题描述】:
我在 MySQL 表中存储了以下内容:
<p>First paragraph</p><p>Second paragraph</p><p>Third paragraph</p><div class="item"><p>Some paragraph here</p><p><strong><u>Specs</u>:</strong><br /><br /><strong>Weight:</strong> 10kg<br /><br /><strong>LxWxH:</strong> 5mx1mx40cm</p><p>This is the paragraph I am trying to remove with regex.</p></div>
我正在尝试删除表格中每一行的最后一个段落标签和内容。我可以很容易地用 PHP 循环遍历表格,但是正则表达式让我很难过。
我在 stackoverflow 上找到的每个 preg_match 要么给我一个“preg_match(): Unknown modifier”错误,要么 var_dump 显示一个空数组。我相信即使它确实有效也只会匹配内容,所以我认为我需要 preg_replace?
行的长度不相同,但它始终是我要完全删除的最后一段。
如果有人能告诉我怎么做,将不胜感激。谢谢
【问题讨论】:
-
你有什么正则表达式?
Unknown modifier通常意味着您没有使用分隔符,或者您在未转义的表达式中使用分隔符。 -
嗯,我目前拥有的是:- preg_match('/
([^$/', $description, $matches); var_dump($matches); - 这只是给了我一个空数组。
-
$正在寻找字符串的结尾,而不是您的目标结尾。我会写一些应该能够处理这个问题的东西。你应该考虑在未来使用 HTML/XML 解析器,这很快就会变得一团糟。
标签: php regex html-parsing