【发布时间】:2018-08-02 23:24:58
【问题描述】:
我正在尝试替换一些字符串,但我的条件是该字符串必须在“标签”内。 我怎么能用正则表达式做到这一点?
例如:
Text multiline, bla bla bla **FOO** text text text
*START_TAG* text text text text **FOO** a lot of texts
**FOO** more text
*END_TAG*
我想替换 START_TAG 和 END_TAG
之间的 FOO 文本我试着做这样的事情:
(?<=word1)(.*?)(?=word2)
或
(?<=word1)FOO(?=word2)
但在第一种情况下,我得到了标签内的所有内容,而在第二种情况下,什么也没有找到。
我搜索了很多,但人们习惯于搜索括号内的字符串或单词之间的所有文本等。
我正在使用 Java 来执行此操作,但也可以使用 javascript。
【问题讨论】:
-
那么,您使用的是 Java,对吧?标记时请具体说明。
-
对不起。刚刚添加。
-
解决方案可以相同,但对于 Java,只有一个正则表达式解决方案。您想替换这些单词之间出现的所有个
FOO吗? -
是的……没错。
-
因为我从文件中读取了一个字符串,我必须保持它不变,除了这个词。
标签: javascript java regex regex-lookarounds regular-language