我正在尝试使用正则表达式搜索=
或!=
并在其周围添加空格。
我在尝试:
string.replaceAll("\\s*\\b=\\b\\s*", " = ");
但是,如果=
引导或跟随特殊字符,则不起作用,例如:
job="waiter"
job"=\"waiter\"
搜索=
的正确正则表达式是什么? !=
也是如此。但是,我不希望"!="
成为"! ="
。我想要:
job="waiter" to be job = "waiter"
job!="chef" to be job != "chef"
答案 0 :(得分:2)
尝试:
replaceAll(" *((\\!|=)?)= *", " $1= ");
答案 1 :(得分:1)
尝试这种模式:
[ ]*[!]?=[ ]*
这意味着“任何=在没有一个或没有!之前/之后有零个或多个空格”
答案 2 :(得分:0)
.replaceAll("([^\\s])\\s*?(!?=)\\s*?([^\\s])", "$1 $2 $3")