这个问题是从这个论坛的另一个问题衍生而来的,我认为这个问题很简单,但最后发现了一个困难的问题。
OP 要求用 some替换xyz
所有子字符串中的任何文本。我做了以下事情:<tagname>xyz</tagname>
NEW TEXT
String str="<tagname>bgerh</tagname>sdfghuhjg<tagname>bgew</tagname>rwesdgrhtf<tagname>bfgh</tagname>";
System.out.println(str.replaceAll("(?<=(<tagname>)).*(?=(</tagname>))","NEW TEXT"));
我得到的输出:
<tagname>NEW TEXT</tagname>
这显然不是想要的。
所以,我想知道正则表达式检查是否发生在字符串的两端,我会对这个例子的解决方案感到高兴。提前致谢。