preg_replace() 有多行

发布于 2024-09-14 09:20:27 字数 486 浏览 3 评论 0原文

我在使用 preg_replace() 时又遇到了麻烦。我非常需要一本关于 preg_replace() 的书。

我的目的是替换 作者Level1

有什么想法吗? 作者 被其他 HTML 元素包裹:

<td align="center">
  <a onclick="return listItemTask('cb1','block')" href="javascript:void(0);">
    <img width="16" height="16" border="0" alt="Blocked" src="images/tick.png">
  </a>
</td>
<td>
  Author
</td>

I have trouble again with preg_replace(). I terribly need a book for preg_replace().

My intention is to replace <td> author </td> with <td> Level1 </td>

Any ideas? The <td> author </td> is wrapped with other HTML elements:

<td align="center">
  <a onclick="return listItemTask('cb1','block')" href="javascript:void(0);">
    <img width="16" height="16" border="0" alt="Blocked" src="images/tick.png">
  </a>
</td>
<td>
  Author
</td>

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

踏雪无痕 2024-09-21 09:20:27

来自 Perl 正则表达式手册页:(或 PHP PCRE 文档)

修饰符

匹配操作可以有多种
修饰符。相关修饰符
正则的解释
下面列出了里面的表达式。

  • s:将字符串视为单行。即改“.”。匹配任何字符
    无论如何,即使是换行符,
    通常它不会匹配。

From Perl regular expression manual page: (or PHP PCRE docs)

Modifiers

Matching operations can have various
modifiers. Modifiers that relate to
the interpretation of the regular
expression inside are listed below.

  • s: Treat string as single line. That is, change "." to match any character
    whatsoever, even a newline, which
    normally it would not match.
赠意 2024-09-21 09:20:27

少量代码永远不会有什么坏处...

<?php
$string = '
<td align="center">
  <a onclick="return listItemTask(\'cb1\',\'block\')" href="javascript:void(0);">
    <img width="16" height="16" border="0" alt="Blocked" src="images/tick.png">
  </a>
</td>
<td>
  Author
</td>';

$string = preg_replace("/<td>.*Author.*<\/td>/s", "teste", $string);

echo $string;

?>

请注意 \s 修饰符< /a> 用于允许. 匹配换行符

A little code never hurts...

<?php
$string = '
<td align="center">
  <a onclick="return listItemTask(\'cb1\',\'block\')" href="javascript:void(0);">
    <img width="16" height="16" border="0" alt="Blocked" src="images/tick.png">
  </a>
</td>
<td>
  Author
</td>';

$string = preg_replace("/<td>.*Author.*<\/td>/s", "teste", $string);

echo $string;

?>

Do notice the \s modifier used to allow . to match newlines.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文