正则表达式更改标签之间的文本

发布于 2024-12-07 13:38:26 字数 256 浏览 0 评论 0原文

我在以下布局中有一些代码,我使用 textcrawler 进行查找和替换

<a>
Name=LineA
epsium
ask
answer
line=10
color=red
</a>

<a>
Name=LineB
Color=Blue
</a>

...

现在的问题是我需要使用什么正则表达式来删除 之间的第二个代码块和

I have some code in the following layout,i m using textcrawler to do a find and replace

<a>
Name=LineA
epsium
ask
answer
line=10
color=red
</a>

<a>
Name=LineB
Color=Blue
</a>

...

Now the question is what regular expression i need to use so as to remove the second block of code between <a> and </a>

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

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

发布评论

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

评论(3

浪漫人生路 2024-12-14 13:38:26
<a>(\s*?Name\=LineB[\S\s]*?)</a>

它捕获以文本 Name=LineB 开头的 标记之间(包括该标记)的所有文本。

<a>(\s*?Name\=LineB[\S\s]*?)</a>

It captures all text between and including the <a></a> tags that starts with the text Name=LineB.

若水般的淡然安静女子 2024-12-14 13:38:26

在 Perl 中,我会这样做:

$str =~ s~^(.*?<a>.*?</a>.*?)<a>.*?</a>(.*)$~${1}New text$2~s;

第一组包含第二个块 之前的所有内容,第二组包含之后的所有内容。

在 PHP 中:

$str = preg_replace('~^(.*?<a>.*?</a>.*?)<a>.*?</a>(.*)$~', "${1}New text$2", $str);

In Perl, I'll do :

$str =~ s~^(.*?<a>.*?</a>.*?)<a>.*?</a>(.*)$~${1}New text$2~s;

the first group contains everything before the second block <a></a> and the second group everything after.

In php:

$str = preg_replace('~^(.*?<a>.*?</a>.*?)<a>.*?</a>(.*)$~', "${1}New text$2", $str);
上课铃就是安魂曲 2024-12-14 13:38:26
preg_replace("/<body>([\s\S]*.*)<\/body>/",$replace,$origional);

这将替换正文标签之间的全部内容。

preg_replace("/<body>([\s\S]*.*)<\/body>/",$replace,$origional);

this will replace whole content between body tags.

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