我将此标记作为输入标记:
<a href="controller.jsp?sid=127490C88DB5&R=35144" class="11-link-dkred-bold"><b>Mr. John Q. Anderson MBA 1977 E</a>
在此我想要获得值
先生。 John Q. Anderson MBA 1977 E
wat是正则表达式中的patten值吗?
答案 0 :(得分:8)
使用正则表达式解析HTML是非常糟糕的想法 TM ,因为它不是常规语言。你最好通过整理(清理它),然后使用XML解析器或使用XPath来运行它。
否则,捕获的匹配模式为:
<.*?>\([^<]+\)</.*?>
修改强>
我刚注意到您的HTML格式不正确!您没有结束</b>
标记。我给你的正则表达式只有在你用一个标记包装文本时才有效。它不适用于您的示例。假设你内部总是有一个<b>...</b>
标签,你可以这样做:
<.*?><b>\([^<]+\)</b></.*?>
答案 1 :(得分:2)
我建议使用NekoHTML或其他替代品,请参阅例如http://www.benmccann.com/blog/java-html-parsing-library-comparison/
如果您想自己解析它,请使用ANTLR或JavaCC或类似的东西。要做得对,你需要一个强大的语法。