如何从标签之间获取String
,我有:
<span style="color: rgb(51, 102, 255);"><br>AAA </span>
<span style="color: rgb(51, 102, 255);">BBB : </span>
<span style="color: rgb(51, 102, 255);"><br>CCC : </span>
我需要:
<br>AAA
BBB :
<br>CCC
我写了这个但不起作用:
String _comment = "*my html*"
Pattern p = Pattern.compile("<span style=\"color: rgb(51, 102, 255);\">(.+?)</span>", Pattern.MULTILINE | Pattern.DOTALL);
for (Matcher m = p.matcher(_comment); m.find(); ) {
String tag = m.group(1);
}
最佳答案
正则表达式的主要问题是您没有转义 (
和 )
。我想你需要
<span style=\"color: rgb\\(51, 102, 255\\);\">(.+?)</span>
双斜杠是为了确保一个斜杠进入compile
函数。
但事实上,您根本不应该使用正则表达式来解析 HTML。使用专门的 HTML 解析器并使用 DOM 树。
关于Java正则表达式_标签之间的文本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30891148/