結果に他の文字で囲まれていない単語と一致し、単語のみを含める:/[Hh][Ee][Ll][Ll][Oo](?![A-Za-z0-9\-])(?![^<]*>)/g
正規表現:これは私の現在の正規表現です
これはマッチングのための私のテストで:
hello helloa ahello <hello>
^^^^^ !!!!!!
Should match ^^^^^ only
私の現在の正規表現一致するのは!!!!!
です。私はこのような正規表現を作った:/(?<![A-Za-z0-9\-])[Hh][Ee][Ll][Ll][Oo](?![A-Za-z0-9\-])(?![^<]*>)/g
しかし、lookbehindsはjavascriptではサポートされていないので、私は何をすべきか分からない。
編集:私は、私はそれが、少なくともどちらかの側で空白文字、または文字列の先頭または末尾を持つ必要がhello
の検索ここではそうthis is what I'm working on.
、あなたは説明する気にしていますか? – zevee
あなたのコードからは、複合語の一部ではない「hello」という単語全体をマッチさせたいと思い、 '<...>'部分文字列の外に置き換えるだけでした。関数($ 0、$ 1、$ 2、$ 3){return $ 1?$ 0:$ 0、$ 1、$ 2、$ 3を返します。 ($ 2?$ 0: "!!!" + $ 3 + "!!!");}) '](https://jsfiddle.net/ma9seau9/1/)。 –