java - 正确匹配 Java 字符串文字

标签 java regex literals string-literals

<分区>

我正在寻找一个正则表达式来匹配 Java 源代码中的字符串文字。

这可能吗?

private String Foo = "A potato";
private String Bar = "A \"car\"";

我的意图是用其他内容替换另一个字符串中的所有字符串。使用:

String A = "I went to the store to buy a \"coke\"";
String B = A.replaceAll(REGEX,"Pepsi");

像这样。

最佳答案

好的。那么您想要的是在字符串中搜索以双引号开头和结尾的字符序列?

    String bar = "A \"car\"";
    Pattern string = Pattern.compile("\".*?\"");
    Matcher matcher = string.matcher(bar);
    String result = matcher.replaceAll("\"bicycle\"");

注意非贪婪的 .*? 模式。

关于java - 正确匹配 Java 字符串文字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2958825/

相关文章:

java - 我可以从 osgi 控制台获取有关捆绑服务的哪些信息?

java - 整数中的字母。这些是什么?

java - Java 中文字的数据类型/文字算术运算的结果

java - 如何在 MyEclipse 中定义 Label 类?

java - Tomcat7 在工作一段时间后卡住

Java - 数组中的正则表达式反向引用

c - 在 C 中解析 iCalendar 文件

regex - 删除指定字符之间的所有内容,包括多行

c++ - 数字常量 long int 和 long double 的后缀怎么可能都是 l/L?

java - Jsf Netbeans、Hibernate、获取 session 工厂找不到符号错误