如果所有字母都出现在字符串中,则返回 true
Returning true if all letters appear in string?
function match (string,pattern){
pattern = pattern.toLowerCase();
string = string.toLowerCase ();
for (var i=0;i<pattern.length;i++){
for (var j=0;j<string.length;j++){
if (pattern.charAt[i]==string.charAt[j]){
}
*if i has not been found, abort and return false*
}
*as function not aborted, char i=found therefore return true*
}
}
如果模式的所有单个字母都出现在字符串中(无论顺序如何(,我需要返回 true。 如何对最后两行进行编码**?
function match (input,pattern){
pattern = pattern.toLowerCase();
input= input.toLowerCase ();
for (var i=0;i<input.length;i++){
var found = false;
for (var j=0;j<pattern.length;j++){
if (pattern.charAt(j)==input.charAt(i)){
// Letter was found, skip to next one
found = true;
break;
}
}
// As soon as we conclude that one letter was not found, abort
if (found == false){
return false;
}
}
// All letters were found, return SUCCESS
return true;
}
像这样的东西?
如果你使用 Array.every 会更好。它更短,你的意图很明显。
function match (str, pattern) {
str = str.toLowerCase();
return pattern.toLowerCase().split("").every(function(c) {
return str.indexOf(c) !== -1;
});
}
这个应该比将for
循环嵌套在另一个循环中更好地扩展:
function everyChar(sample,pattern){
var patTable=Object.create(null);
var aSample=Array.prototype.slice.call(sample.toLowerCase());
var aPattern=Array.prototype.slice.call(pattern.toLowerCase());
aPattern.forEach(function(c){patTable[c]=true;});
aSample.forEach(function(c){delete patTable[c];});
return Object.keys(patTable).length==0;
}
var sample_pass="pack my box with five dozen liquor jugs";
var pat="the quick brown fox jumped over the lazy dogs";
everyChar(sample_pass,pat);
/*
true
*/
var sample_fail="pack my bag with five dozen liquor jugs";
everyChar(sample_fail,pat);
/*
false
*/
相关文章:
- 如果URL中有任何字符串变体匹配,则返回true
- 为什么只有当我在字符串周围输入引号时,表单输入的isNaN才为true
- 为什么innerHTML在和相同的字符串值比较时不返回true
- 为什么布尔(true)&&string是javascript中的字符串
- 在HTML中搜索字符串并返回True的Javascript条件
- Javascript TRUE和“;真“;为什么有人使用字符串而不是布尔值
- 比较字符串,如果存在小的拼写错误,则返回 true
- 函数:根据字符串中是否存在子字符串返回 True/False
- 在表的所有 tds 中搜索确切的字符串“已停用”;如果为 true,则隐藏该表的整行
- 在 JavaScript 中,数组如何引用到空字符串 + true 中是一个有效字符
- 如果字符串与正则表达式 JavaScript 不匹配,则返回 True
- 使用 JavaScript 搜索字符串,如果结果为 true,则重定向页面
- 如何将对正在定义或未定义的变量的检查强制转换为读取True或False的字符串
- 如果所有字母都出现在字符串中,则返回 true
- JavaScript字符串比较总是返回true
- 无论传入什么字符串,If语句都始终为true
- 为什么数字<字符串在JavaScript中返回true
- 同时包含字符串true和布尔值true的Javascript
- 仅当某些字符串为 true 时,才根据标题选择 IMG
- 如果上一个字符串为true,则返回false,否则为true-javascript