Java 使用正则表达式从HTML属性中提取数字
我必须从类似以下代码的Java代码中提取一个数字(使用jsoup):Java 使用正则表达式从HTML属性中提取数字,java,html,regex,jsoup,Java,Html,Regex,Jsoup,我必须从类似以下代码的Java代码中提取一个数字(使用jsoup): <i class="name" title="There are 3 elements" ></i> 但它不起作用。问题出在哪里?试试这个: i[title~=There (is|are) (\d+) element.] 试试这个。抓取捕获或组1。参见演示 您无法工作的原因是您将所有内容都包含在[]字符类中,该类不维护序列,只是一个可供选择的字符池。据我所知,jsoup用于基于正则表达式选择项,而
<i class="name" title="There are 3 elements" ></i>
但它不起作用。问题出在哪里?试试这个:
i[title~=There (is|are) (\d+) element.]
试试这个。抓取捕获或组1。参见演示
您无法工作的原因是您将所有内容都包含在
[]
字符类中,该类不维护序列,只是一个可供选择的字符池。据我所知,jsoup
用于基于正则表达式选择项,而不是从中提取数据。您正在尝试的操作是否实际可行?请尝试此title=“有([0-9]+)元素”
并获取第一个匹配的组,或者尝试(?)?
i[title~=There (is|are) (\d+) element.]
title="There\\s+are\\s+([0-9]+)\\s+elements"