Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 正则表达式与空字符串不匹配 Pattern srcatrpattern=Pattern.compile((?i)(?_Java_Regex - Fatal编程技术网

Java 正则表达式与空字符串不匹配 Pattern srcatrpattern=Pattern.compile((?i)(?

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

注意,要解析HTML,最好使用一些专用的解析器(例如)

至于当前匹配
src=”“
字符串的问题,最终的否定查找要求当前位置之前的字符不是引号。因为您使用的是否定字符类
[^”]*
(0+个字符不是
),所以您不需要该查找


删除
(?您可以删除最后一个断言,但不能保证最后有一个dbl引号,请将其更改为
(?=”)
。但是为什么要用一个慢而干的断言来解决所有问题呢..使用更合理的方法,
src=“(.*)”
Pattern srcAttrPattern = Pattern.compile("(?i)(?<=src=\")[^\"]*(?<!\")");
Matcher srcMatcher=srcAttrPattern.matcher("src=\"\"");
System.out.println(srcMatcher.find());