用于 html 选择标记解析的 Java 正则表达式

我将编写一个程序,我只是逐行读取一个 jsp 文件并使用正则表达式检查页面中是否有任何select标签。如果是,那么我想提取<option>DATA</option>标签之间的数据。


我在 regex101 处写了以下正则表达式。


(?:<select.*>\n?\s+(.*<option.*>$.*)\n?\s+<\/select>.*)

那些不了解 regex101 的人,您还可以使用左上角的侧边栏查看 regex 的 java 代码。


问题是正则表达式不匹配字符串的任何内容:


<select name="javaType">

  <option value="boolean">boolean</option> 

  <option value="byte">byte</option> 

  <option value="char" selected>char</option> 

  <option value="double">double</option> 

  <option value="float">float</option> 

  <option value="int">int</option> 

  <option value="long">long</option> 

</select>

我想提取标签之间的数据。我知道我的正则表达式不完整,但我不知道我应该如何继续。


我是否逐行解析并首先检查选择标签,然后再次检查标签?或者有更好的方法使用正则表达式吗?


一只萌萌小番薯
浏览 188回答 2
2回答
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java