私はJavaScriptコードの演習を解決しようとしています。私のコードは間違っていて、なぜ私は見ることができません。JavaScript - 文字が記号で囲まれているかどうかを確認するにはどうすればよいですか?
タスクは次のとおりです。
は、文字列を取り、文字列内のすべての文字が「+」記号で囲まれている場合は、trueを返し、そうでない場合はfalseを返します。
ほとんどの場合は機能しますが、 '= a +'では機能しません。その理由はわかりません。誰かが説明できますか?
function SimpleSymbols(str) {
for (var i = 0; i < str.length; i++) {
if (str[0].match(/[a-z]/i) || str[str.length - 1].match(/[a-z]/i)) {
return false;
} else {
if (str[i].match(/[a-z]/i) && (str[i - 1] !== "+" || str[i + 1] !== "+")) {
return false;
} else {
return true;
}
}
}
}
SimpleSymbols(readline());
ループを完全にスキップして、正規表現を使用して前後にプラス記号が付いていない文字を探すことはできませんでしたか? 'return!/(^ | [^ +])[a-z] | [a-z]([^ +] | $)/ i.test(str);'のようなものです。 – nnnnnn