我的输入是
String input = "I am doing <span id='icms'>test</span>on <span id='icms'>regex</span> exp."
现在我的输出就像
"regex exp"
但是我的输出需要这样
I am doing test on regex exp
所以需要关于正则表达式和匹配器的帮助。
我的输入是
String input = "I am doing <span id='icms'>test</span>on <span id='icms'>regex</span> exp."
现在我的输出就像
"regex exp"
但是我的输出需要这样
I am doing test on regex exp
所以需要关于正则表达式和匹配器的帮助。
你需要两个替代品。首先替换<span[^>]*id=['"]icms['"][^>]*>([^<]*)</span>
为' $1 '
(不带引号;它们只是告诉您必须预先添加一个空格),然后用一个空格替换' {2,}'
(再次不带引号)。
快速 PowerShell 测试:
PS> "I am doing <span id='icms'>test</span>on <span id='icms'>regex</span> exp." -replace '<span[^>]*id=[''"]icms[''"][^>]*>([^<]*)</span>',' $1 ' -replace ' {2,}',' '
I am doing test on regex exp.
以下将捕获不是标签的每个部分,这似乎是您想要的:
(?:(.*)<.*?>(.*))*
编辑:
然后对于这个特定的标签:
(?:(.*?)<span id='icms'>([^<]*?)</span>(.*))*