0

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

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

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

...

现在的问题是我需要使用什么正则表达式来删除第二个代码块<a> and </a>

4

3 回答 3

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

它捕获所有文本,包括以<a></a>text 开头的标签Name=LineB

于 2011-09-30T15:30:20.710 回答
1

在 Perl 中,我会这样做:

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

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

在 php 中:

$str = preg_replace('~^(.*?<a>.*?</a>.*?)<a>.*?</a>(.*)$~', "${1}New text$2", $str);
于 2011-09-30T15:41:08.370 回答
0
preg_replace("/<body>([\s\S]*.*)<\/body>/",$replace,$origional);

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

于 2013-11-18T12:58:47.220 回答