Javascript 将两个句子分成单词和字符,并分别展示

Javascript 将两个句子分成单词和字符,并分别展示,javascript,arrays,regex,split,Javascript,Arrays,Regex,Split,请帮我把两个句子分成一组单词和字符,并分别显示出来 我的输入字符串如下所示: 如果你不哭,我会给你糖果。那我就给你 自制蛋糕 我迄今为止所做的工作如下: $function{ 生成树; 函数生成器{ $splitedWords.html; var Input=如果你不哭,我会给你糖果。然后我会给你自制蛋糕。; var outputArray=Input.split/\s+/;//用于拆分每个单词 //用于在按钮内打印已排序的单词 对于变量i=0;i

请帮我把两个句子分成一组单词和字符,并分别显示出来

我的输入字符串如下所示:

如果你不哭,我会给你糖果。那我就给你 自制蛋糕

我迄今为止所做的工作如下:

$function{ 生成树; 函数生成器{ $splitedWords.html; var Input=如果你不哭,我会给你糖果。然后我会给你自制蛋糕。; var outputArray=Input.split/\s+/;//用于拆分每个单词 //用于在按钮内打印已排序的单词 对于变量i=0;i 需要O/P是否要将单词、点、逗号、连字符、分号等拆分为数组 var outputArray=[如果,你,没有,哭,我,威尔,给,你,糖果,然后,我,威尔,给,你,自制,蛋糕,];

实际O/P


您要做的是将文本拆分为标记。如果您搜索,您将找到这个问题的无限解决方案,因为这是大多数语言解析器为了进一步分析文本所做的。我强烈建议这样做,这是一些需要熟悉的有用的东西

你可以用很多方法来实现,正则表达式就是其中之一,但不是最简单的方法

[!#%&\'*+,\-./:;<=>?@\\\^_\`|~](?!\w)|[\"\)\(\]\[{}]|[^\s]*?(?=[!\"\#%&\'()*+,\-./:;<=>?@[\\\]^_\`{|}~]?(?:\s|$))
就是我当场想到的,所有的匹配都是你的代币,如图所示,把它们放进一个数组

array = yourstring.match(/[!#%&\'*+,\-./:;<=>?@\\\^_\`|~](?!\w)|[\"\)\(\]\[{}]|[^\s]*?(?=[!\"\#%&\'()*+,\-./:;<=>?@[\\\]^_\`{|}~]?(?:\s|$))/)

应该提供您想要的结果。

FYI jQuery是一个用于修改DOM的库,在这种情况下它没有用处。javascript有一个拆分函数。在这种情况下,它不会得到你想要的,但这是一个好的开始。var str=您的字符串;str.split。。看看这对你是否有效you@depperm我将发布到目前为止我所做的事情,我使用了JavaScript分割方法和reg-ex:我使用JavaScript分割方法和reg-ex吐单词。这是我的错误,我没有发布我到目前为止所做的事情。我将发布它。使用string.match函数进行编辑,它将为您提供所需的结果。好的,我将尝试。