Javascript 用词断句
将完整单词及其后续字符放入数组的好策略是什么 例如 这是一个惊人的句子 元素0-3将有一个后续空格,因为句点在第4个元素之后 我需要你把这些按字符间距分开, 然后,一旦注入阵列元素的元素宽度达到X, 换一条新路线 求你了,gawd别给我太多的密码。我更喜欢自己写,只要告诉我你会怎么做。只需使用: 如果你需要一个空间,为什么不这样做呢?(之后使用循环)Javascript 用词断句,javascript,jquery,Javascript,Jquery,将完整单词及其后续字符放入数组的好策略是什么 例如 这是一个惊人的句子 元素0-3将有一个后续空格,因为句点在第4个元素之后 我需要你把这些按字符间距分开, 然后,一旦注入阵列元素的元素宽度达到X, 换一条新路线 求你了,gawd别给我太多的密码。我更喜欢自己写,只要告诉我你会怎么做。只需使用: 如果你需要一个空间,为什么不这样做呢?(之后使用循环) var str=“这是一个惊人的句子。”; var words=str.split(“”); for(var i=0;iw!=''); 控制台日志
var str=“这是一个惊人的句子。”;
var words=str.split(“”);
for(var i=0;i
哦,睡个好觉 如果您想在O(N)中包含空格并完成,这里有一个选项
var str=“这是一个惊人的句子。”;
var-words=[];
var buf=“”;
对于(变量i=0;i0){
字。推(buf);
}
试试这个
var words = str.replace(/([ .,;]+)/g,'$1§sep§').split('§sep§');
这将
§sep§
,;]+如果你需要空格和圆点,最简单的方法就是
"This is an amazing sentence.".match(/.*?[\.\s]+?/g);
结果将是
['This ','is ','an ','amazing ','sentence.']
类似于,使用match
,但使用正则表达式中的单词边界\b
在单词边界上拆分:
'This is a test. This is only a test.'.match(/\b(\w+)\b/g)
屈服
["This", "is", "a", "test", "This", "is", "only", "a", "test"]
["This ", "is ", "a ", "test. ", "This ", "is ", "only ", "a ", "test."]
或
屈服
["This", "is", "a", "test", "This", "is", "only", "a", "test"]
["This ", "is ", "a ", "test. ", "This ", "is ", "only ", "a ", "test."]
这可以通过lodash实现:
var str='这是一个令人惊叹的句子';
console.log(单词(str,/[^,]+/g))代码>
使用和删除前导空格和尾随空格
let str='这是一个惊人的句子',
words=str.split('').filter(w=>w!='');
控制台日志(文字)代码>可通过拆分功能完成:
"This is an amazing sentence.".split(' ')
@cars10改变了答案-这能解决问题吗?@cars10为什么你需要在每个单词的末尾加空格?如果您想在压缩字符串时将其返回,只需.join(“”)代码>我只是在打这个。很好,反应很快。回答很好:)我需要空格,因为用户的句子有空格,我计划重新输出他们的句子,而不必在循环中声明空格。:)感谢U@user2716649正如丹尼斯·马丁内斯(Dennis Martinez)所提到的,你可以简单地使用来获得,这是一个令人惊叹的句子。
再次强调。这确实是最好的答案,因为按空间分割对于现实生活场景来说并不实用。好吧,除非你不使用标点符号,并且总是使用单个空格。这会将“不会”转换为“不会”和“t”。这允许收缩:str.match(/\b(\w+)?(\w+)?\b/g)仅限英语单词:(使用javascript函数。我将采用此答案中提供的方法。但对于您的情况,请将var newstringreplace=string.replace(/d/gi,,),d”);
更改为var newstringreplace=string.replace(/\s/gi,,))
.Edit:应该建议,只有原始字符串没有,
,此方法才有用。我认为此解决方案更安全:
'This is a test. This is only a test.'.match(/\b(\w+\W+)/g)
["This ", "is ", "a ", "test. ", "This ", "is ", "only ", "a ", "test."]
"This is an amazing sentence.".split(' ')