项目中因为要对源文件进行词法分析,用正则表达式要查找字符串常量,但是在网上找资料却很少,所以决定自己写程序找出一段源程序中字符串常量的个数。
正则表达式为:” \”\w*\”” 其中\w表示表示单词
java实现如下:
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class ReplaceQuote {
public static void main(String[] args){
String source = "String a1 = \"dog\",String a2 = \"cat\"";
String resultSource = "";
Pattern quoteRegex = Pattern.compile("\"\\w*\"");
Matcher quoteRegexMatcher = quoteRegex.matcher(source);
while(quoteRegexMatcher.find()){
System.out.println("字符串常量为:");
System.out.println(quoteRegexMatcher.group());
}
}
}
输出结果为:
字符串常量为:
"dog"
字符串常量为:
"cat"