我一直在编写一个简单的聊天机器人,除了句子分解之外,一切都已完成。
如何创建一个函数来分解执行以下操作的句子?
我还在学习JavaScript,并想知道如何做到这一点。
答案 0 :(得分:4)
一个简单的解决方案是这样的:
var result = input.toLowerCase().match(/[\w'-]+/g);
toLowerCase
将字符串转换为小写,然后match
将找到一个或多个单词字符(包括字母,数字和下划线),撇号或连字符的任何序列。
例如:
var input = "I'm still learning JavaScript, and would like to know how to best do this.";
var result = input.toLowerCase().match(/[\w'-]+/g);
console.log(result); // ["i'm", "still", "learning", "javascript", "and", "would", "like", "to", "know", "how", "to", "best", "do", "this"]
答案 1 :(得分:1)
考虑以下代码:
s = 'Filter out commas, exclamation points, and periods.';
arr = s.toLowerCase().replace(/[,!.]/g, ' ').split(/ +/).filter(Boolean);
//=> ["filter", "out", "commas", "exclamation", "points", "and", "periods"]