文章:
id="word1 word2 word3/343/els/425/word4 word5 word6"
wordA wordB Bword2B word1 word2 word3
blah blah blah
テキスト内の単語1、単語2、単語3の単語全体を一致させようとしていますが、テキストの行でそれらを一致させたくありませんid="word1 word2 word3/343/els/425/word4 word5 word6"
。単語はラテン語ではありません。
現在のアプローチ:
var sWord = "word2";
text = text.replace( new RegExp(sWord+"(?!\/[0-9])", "gi"), "<span style='background-color: yellow'>"+sWord+"</span>");
このアプローチは、word1 または word2 ではなく、word3 に対してのみ機能します。そのため、NUMBER の前に別の単語がある可能性を正規表現にどのように導入すればよいでしょうか?
"(?!.\/[0-9])"
ドット「。」を追加しました。正規表現に。しかし、うまくいかないようです。
さらに、単語全体の一致の可能性を追加するにはどうすればよいですか? \bと\Sは、単語がラテン語ではないため、機能しないようです。
前もって感謝します!
編集: jsfiddle http://jsfiddle.net/GLt4F/5/
ボタンが word1 と word2 で壊れているのがわかりますが、一致が正しいため、word3 では壊れていません。
EDIT2:
問題を言い換えると、BBB が続かない場合にのみ AAA に一致し、それらの間は何でもかまいません。例:
AAA frefe BBB は一致しませ
ん AAA BBB は
一致しません
AAA frefe cc は一致する必要があります