可能重复:
Regex help required
我正在尝试更换两个或多个< br />的出现次数。 (例如< br />< br />< br />)标记以及两个< br />< br />具有以下模式
Pattern brTagPattern = Pattern.compile("(<\\s*br\\s*/\\s*>\\s*){2,}",
Pattern.CASE_INSENSITIVE | Pattern.DOTALL);
但是在某些情况下'&lt; br /&gt; &LT峰; br /&GT;”标签带有空格,它们被4&lt; br /&gt;取代。实际上应该只用2个标签替换的标签。
如何忽略标签之间的2个或3个(几个)空格?
答案 0 :(得分:-1)
你可以改变你的正则表达式:
Pattern brTagPattern = Pattern.compile("<\\s*br\\s*/\\s*>\\s*<\\s*br\\s*/\\s*>\\s*", Pattern.CASE_INSENSITIVE | Pattern.DOTALL);
这将忽略两个之间的每个空格。如果你只想要2或3,你可以使用:
Pattern brTagPattern = Pattern.compile("<\\s*br\\s*/\\s*>(\\s){2,3}<\\s*br\\s*/\\s*>\\s*", Pattern.CASE_INSENSITIVE | Pattern.DOTALL);