我有以下输入字符串:
flag1 == 'hello' and flag2=='hello2'
(字符串长度和=='something'有所不同)。
所需的输出:
flag1==("hello") and flag2=("hello2")
我试过了
line = line.replaceAll("(\\s*==\\s*)", "(\"")
但这并没有给我结尾括号。知道如何做到这一点吗?
谢谢!
最佳答案
除非我有误会,否则您可以将引号之间的所有内容都匹配并替换。
String s = "flag1 == 'hello' and flag2=='hello2'";
s = s.replaceAll("'([^']+)'", "(\"$1\")");
System.out.println(s); // flag1 == ("hello") and flag2==("hello2")
如果要替换
==
周围的空格:s = s.replaceAll("\\s*==\\s*'([^']+)'", "==(\"$1\")");