java如何用正则获取引号内的内容?

我想用java程序,写正则,提取某java文件中的引号内的内容,这个正则该如何写? 我写了个正则表达式:[^\"]*\"([^\"]+)\" 每次去获…
关注者
3
被浏览
4,467

1 个回答

分解问题:

1、以引号开始,任意字符,以引号结束。

2、末尾引号左边不能是 \

3、末尾引号左边可以是 \\

4、末尾引号左边不能是 a\

关键就是:末尾引号左边不能是非转义字符跟一个转义字符。

如图:

# 用字符串创建正则是一件很蛋疼的事情。

比如Java:

try {
	boolean isMatch = str.matches("\"(.*?)(?<![^\\\\]\\\\)\"");
} catch (PatternSyntaxException ex) {
	// Syntax error in the regular expression
}