使用正则表达式从HTML属性中提取数字

时间:2014-12-30 10:09:30

标签: java html regex jsoup

我必须从类似于这个的代码中使用Java(使用jsoup)提取一个数字:

<i class="name" title="There are 3 elements" ></i>

(3是要提取的数字)

我试过这个正则表达式:

i[title~=There\\s*+are\\s*=[0-9]+\\s*elements]

但它不起作用。问题在哪里?

2 个答案:

答案 0 :(得分:2)

title="There\\s+are\\s+([0-9]+)\\s+elements"

试试这个。捕获或组1.参见演示。

https://regex101.com/r/rU8yP6/3

你的工作不起作用的原因是因为你在[]字符类中包含了一些不保持序列的字符,而且只是一个可供选择的字符池。

答案 1 :(得分:-1)

试试这个:

i[title~=There (is|are) (\d+) element.]