Java 正则表达式与空字符串不匹配 Pattern srcatrpattern=Pattern.compile((?i)(?
注意,要解析HTML,最好使用一些专用的解析器(例如) 至于当前匹配Java 正则表达式与空字符串不匹配 Pattern srcatrpattern=Pattern.compile((?i)(?,java,regex,Java,Regex,注意,要解析HTML,最好使用一些专用的解析器(例如) 至于当前匹配src=”“字符串的问题,最终的否定查找要求当前位置之前的字符不是引号。因为您使用的是否定字符类[^”]*(0+个字符不是”),所以您不需要该查找 删除(?您可以删除最后一个断言,但不能保证最后有一个dbl引号,请将其更改为(?=”)。但是为什么要用一个慢而干的断言来解决所有问题呢..使用更合理的方法,src=“(.*)” Pattern srcAttrPattern = Pattern.compile("(?i)(?<=
src=”“
字符串的问题,最终的否定查找要求当前位置之前的字符不是引号。因为您使用的是否定字符类[^”]*
(0+个字符不是”
),所以您不需要该查找
删除
(?您可以删除最后一个断言,但不能保证最后有一个dbl引号,请将其更改为(?=”)
。但是为什么要用一个慢而干的断言来解决所有问题呢..使用更合理的方法,src=“(.*)”
Pattern srcAttrPattern = Pattern.compile("(?i)(?<=src=\")[^\"]*(?<!\")");
Matcher srcMatcher=srcAttrPattern.matcher("src=\"\"");
System.out.println(srcMatcher.find());