解析文本文档的最佳方法

Eri*_*lin 7 php regex parsing json

我试图用PHP解析纯文本文档但不知道如何正确地执行它.我想分隔每个单词,为它们分配一个ID并以JSON格式保存结果.

示范文本:

"Hello, how are you (today)"
Run Code Online (Sandbox Code Playgroud)

这就是我现在正在做的事情:

$document_array  = explode(' ', $document_text);
json_encode($document_array);
Run Code Online (Sandbox Code Playgroud)

生成的JSON是

[["Hello,"],["how"],["are"],["you"],["(today)"]]
Run Code Online (Sandbox Code Playgroud)

我如何确保空间保持在原位,并且符号不包含在单词中......

[["Hello"],[", "],["how"],[" "],["are"],[" "],["you"],["  ("],["today"],[")"]]
Run Code Online (Sandbox Code Playgroud)

我确定需要一些正则表达式...但不知道应用什么样的模式来处理所有情况......有什么建议吗?

Yos*_*shi 2

也许是这个:?

array_filter(preg_split('/\b/', $document_text))
Run Code Online (Sandbox Code Playgroud)

'array_filter',删除结果数组的第一个和/或最后一个索引处的空值,如果您的字符串以单词边界开头或结尾,则会出现空值(\b 请参阅:http ://php.net/manual/ en/regexp.reference.escape.php )