ホームページ >ウェブフロントエンド >jsチュートリアル >引用符がエスケープされている場合でも、引用符の外にある正規表現インスタンスを照合するにはどうすればよいですか?
引用符の外側の正規表現インスタンスの一致: 代替アプローチ
前の質問では、引用符の外側の正規表現のすべてのインスタンスを一致させることが提案されました。引用は不可能です。ただし、これは完全に正確というわけではありません。
この問題の解決策は、単語の後ろに偶数の引用符がある場合、その単語が引用符の外側にあると認識することです。これは先読みアサーションとしてモデル化できます:
\+(?=([^"]*"[^"]*")*[^"]*$)
ただし、これはエスケープされた引用符を考慮していません。これを処理するために、引用符の前にバックスラッシュがあった場合に次の文字を無視するように式が変更されます。
\+(?=([^"\]*(\.|"([^"\]*\.)*[^"\]*"))*[^"]*$)
この複雑な式により、引用符内にない正規表現のすべてのインスタンスが、たとえエスケープされた引用符の存在。
.split() メソッドと .replace() メソッドの一般的な代替手段
この正規表現ソリューションはうまく機能しますが、すべてのメソッドに適しているわけではない可能性があります。特に .split() メソッドと .replace() メソッドを使用する場合。別のアプローチは、次の手順を使用することです。
このアプローチはより柔軟であり、より幅広いシナリオで使用できます。
以上が引用符がエスケープされている場合でも、引用符の外にある正規表現インスタンスを照合するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。