标签:
今天在写正则的时候发现Java正则使用零宽断言(?<!exp) 匹配前面不是exp的位置,报出了一个异常:
Exception in thread "main" java.util.regex.PatternSyntaxException: Look-behind group does not have an obvious maximum length near index 26
(?<=<img[^>]*src="[^"]*")[^>]*>
^
具体大概是讲没有一个明显的最大长度,后来查了下资料才发现,Java正则 <=断言的限制, 需要有最大值,所以只要改一下正则表达式*通配符就可以了。
原:(?<=<img[^>]*src="[^"]*")[^>]*>
改:(?<=<img[^>]{0,500}src="[^"]{0,500}")[^>]*>
Java正则零宽断言出现PatternSyntaxException异常
标签:
原文地址:http://my.oschina.net/u/1175007/blog/478054