我正在寻找一个匹配所有空格和换行符(\ s)但不匹配引号之间的空格(双精度或简单)的正则表达式。示例:
a = b //matches 2 whitespaces a*=*b
a = "my test" // matches 2 whitespaces too a*=*"my test" (ignoring all whitespaces , lines breaks,etc between quotes.)
a = "my test", a = b , c = "my another string " // matches 9 (excluding strings whitespace)
有任何帮助吗?
答案 0 :(得分:0)
以下正则表达式应该可以正常工作:
?![^"]*"(?:[^"]*"[^"]*")*$)
演示here
请注意,正则表达式以空格开头,我没有使用\s
,因此它只匹配空格而不是制表符或换行符。
正则表达式意味着匹配任何后面没有奇数引号的空格
另外,不要忘记使用m
标志