我需要从字符串中提取data-user_id
数字
输入字符串示例
data-user_id="987654" lorem epsem lorem epsem lorem epsem lorem
data-user_id="123456-6" lorem epsem epsem lorem epsem
<img src="abcd.com"/> lorem epsem data-user_id="123456"
预期产量
987654,123456-6,123456
我拥有的代码(无效)
private static String getIdFromLine(String inputLine) {
Pattern p = Pattern.compile("(data-user_id=\"[0-9a-z]*\")");
Matcher m = p.matcher(inputLine);
if (m.find()) {
String src = m.group(2);
}
return null;
}
最佳答案
您应该有以下正则表达式:
data-user_id=\"([0-9a-z-]+)\"
group(1)
将包含所需的输出。您的代码遭受更多问题;您没有循环结果,而不是
if
您应该具有while
循环:while (m.find()) {
//build the result here
{