我知道 /[\s]+/'
用空格分割字符串。我正在尝试扩展它以忽略双引号内的任何空格。所以我希望 Hello World
被拆分,而不是 "Hello World"
preg_split('/[\s]+/', $string)
是我在 PHP 中使用的表达式。
最佳答案
您可以使用 PCRE 动词 (*SKIP)(*FAIL)
告诉正则表达式跳过表达式的特定部分。所以:
".*?"(*SKIP)(*FAIL)|\s+
将跳过双引号字符串。这是一个 regex101 演示:
https://regex101.com/r/eBP67C/1/
您可以在这里阅读更多相关信息,http://www.rexegg.com/regex-best-trick.html#pcrevariation .
关于php - 按空格分隔但忽略双引号字符串的正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43264532/