Html Regex保持字符串不变

时间:2013-09-09 13:41:19

标签: regex scala

我想在html字符串中删除一些标签和这些标签的内容,如下所示:

val htmlString = "<html><b>test,test</b></html>"
val strippedStr = htmlString.replaceAll("<b[^>]*>[a-z]*<//b>", "")

但它似乎保持了字符串不变。

知道我特别错的是什么吗? (也许是错误的逃避?)

提前致谢

2 个答案:

答案 0 :(得分:1)

如果性能不是问题,您可以使用延迟量词来匹配</b>以外的所有内容。额外的//也是不必要的。

<b[^>]*>.*?</b>

REY

您的代码

val htmlString = "<html><b>test,test</b></html>"
val strippedStr = htmlString.replaceAll("<b[^>]*>.*?</b>", "")

答案 1 :(得分:0)

转义字符为\,而不是//不需要首先转义。这不匹配,因为输入中没有<//b>

除此之外......不要使用正则表达式来操纵HTML。使用正确的HTML解析器和HTML清理程序来预处理输入。