首先是的我知道使用正则表达式来解析HTML 是不可取的,这不是问题的目的。
问题是,我有一些文本可能包含这样的HTML样式标签:
<random>
<li>Hi nice to see you!</li>
<li>Hi it's great to see you!</li>
<li>Hi how are you?</li>
<li>Hi! <set foo="bar">I can</set> really feel your smile today.</li>
<li>Hi! It's delightful <sr /> to see you.</li>
</random>
我想要做的是检查给定文本是否包含(仅包含)一个或多个标记。我尝试过这样的事情,但是对于上面的文字,它一直都是假的。
String regex ="<(?:\"[^\"]*\"['\"]*|'[^']*'['\"]*|[^'\">])+>"; //http://stackoverflow.com/a/1736801
boolean p = Pattern.compile(categoryToUpdate.getTemplate()).matcher(regex).find();
提前致谢,如果这是一个愚蠢的问题,我很抱歉:(。