var _myTxt;
var _myWord;
var _count;
var _count2;
function _findWord() {
_myTxt = document.getElementById('myTextBox').value;
_myWord = document.getElementById('myTxtField').value;
var re = new RegExp(_myWord, "gi");
_myTxt = _myTxt.replace(re, "<span style='font-weight: bold'>$&</span>");
_count = _myTxt.match(re);
_count2 = _count.length;
alert(_count.length); // alert returns nothing when there is 0 match ?!
if (_count < 1) {
document.getElementById("_idProcessedTxt").innerHTML = "There is no matching occurence for searched word";
} else {
document.getElementById("_idProcessedTxt").innerHTML = _myTxt;
document.getElementById("_idProcessedTxt2").innerHTML = ("Your word was matched : " + _count2 + " times.");
}
}
こんにちは、上記のコードは次のようになっています。
- 文字列を別の文字列 (実際にはスパンタグと同じ文字列) に置き換え、
- 出現回数/置換が見つかった回数を数えます。
少なくとも 1 つ以上の一致があるすべてのケースでうまく機能します。どういうわけか、入力した単語がまったく一致しない場合は機能しません。これはコードを完全に壊しているように見えます.一致が0の場合でもアラートは何も返しません.
理由はありますか?