我试图完成,而无需使用正则表达式如下:获取JavaScript以返回true,如果所有模式的各个字母出现在字符串
比赛(“ABCDEF”,“@ C2D!”)返回true
比赛( “ABCDEF”, “咖啡”)返回true
比赛( “ABCDEF”, “CG”)返回false
这是我到目前为止的代码 - 的jsfiddle这里:http://jsfiddle.net/5UCwW/1/
var re = /[^A-Za-z]/g;
function match(string, pattern) {
string = string.toLowerCase();
pattern = pattern.toLowerCase().replace(re, "");
for (var i = 0, l = string.length; i < l; ++i) {
if(pattern.indexOf(string[i]) === -1) return false;
}
return true;
}
alert(match("abcdef", "@C2D!"));
为什么你想避免正则表达式? –
@ mrrogers我们没有在课程中教过它 - 所以我们不允许使用它 – theshizy