我正在尝试使用正则表达式提取表单元素值:
Pattern pattern = Pattern.compile("name=\"(token)\"[^>]*value=\"([^\"]+)\"", 2);
Matcher matcher = pattern.matcher(result);
if(matcher.find())
{
String value = matcher.group(2);
}
<input type="hidden" name="token" value="YToxOntzOjU"/>
但是,我的匹配器
没有产生任何结果。我错过了什么?
最佳答案
你不应该parse HTML using regular expressions ,但是你写的代码似乎工作正常?
String result = "<input type=\"hidden\" name=\"token\" value=\"YToxOntzOjU\"/>";
Pattern pattern = Pattern.compile("name=\"(token)\"[^>]*value=\"([^\"]+)\"", 2);
Matcher matcher = pattern.matcher(result);
if (matcher.find()) {
String value = matcher.group(2);
System.out.println(value); //=> "YToxOntzOjU"
}
关于java - 获取元素属性值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23878708/