我试图找到并使用Java替换文件中,但无法得到解决。Java的正则表达式为“双引号和'空间
文件内容
‘产品代码’=” 8 :{3E3CDCB6-286C-4B7F-BCA6-D347A4AE37F5}”
“产品代码”= “8:.NETFramework,版本= 4.5版”
我要更新第一个的GUID这是3E3CDCB6-286C-4B7F-BCA6-D347A4AE37F5
String line = "\"ProductCode\" = \"8:{3E3CDCB6-286C-4B7F-BCA6-D347A4AE37F5}\"";
String pattern = "[\"]([P][r][o][d][u][c][t][C][o][d][e]).+([\"])(\\s)[\"][8][:][{]";
Pattern r = Pattern.compile(pattern);
Matcher m = r.matcher(line);
System.out.println(m.matches());
我越来越假。
请尽可能提供解决方案。
在此先感谢。
在你应用了一些正则表达式之后,你的'ProductCode'的实际期望输出是多少? –
'Matcher.matches()'应该匹配整个字符串。如果你不想检查部分匹配,使用'find()'。 – Codebender
用方括号中的单个字母构造是多余的。你可以简单地使用'ProductCode'来代替'[P] [r] [o] [d] [u] [c] [t] [C] [o] [d] [e]''。尝试简化你的正则表达式。 – RealSkeptic