【发布时间】:2016-05-12 06:49:01
【问题描述】:
我正在尝试将字符串拆分为 Javascript 中的单个单词数组。第一步很简单:
words = text.split(/\b\s+(?!$)/);
此解决方案工作正常,只是它不使用标点符号作为分隔符。例如写“你好!你好吗?”,在单词数组中我找到“你好!”、“怎么样”、“是”、“你?”。
我用一个不太优雅的解决方案解决了这个问题(但它有效!):
str= str.replace(",","");
str= str.replace(".","");
str= str.replace("!","");
str= str.replace("?","");
但是还有一个大问题。如果 str 包含任何非英文字符(例如意大利字符 ò,à,è,ù),则方法 split 不会拆分单词。
例如,如果文本是“Perché sei partito?”,则“Perché sei”被拆分为数组单词的单个元素(就像它是单个单词一样)。
有什么解决办法吗?非常感谢您的帮助!
【问题讨论】:
标签: javascript string parsing