ホームページ >ウェブフロントエンド >jsチュートリアル >JavaScript で引用符の外側にある正規表現インスタンスを照合する方法: 包括的なガイド

JavaScript で引用符の外側にある正規表現インスタンスを照合する方法: 包括的なガイド

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-10-25 07:04:29895ブラウズ

How to Match Regex Instances Outside Quotes in JavaScript: A Comprehensive Guide

引用符で囲まれていないインスタンスの一致

前の質問では、引用符内のテキストを除外しながら、正規表現のすべての出現を一致させることが提案されました。実現不可能です。ただし、この制限は、複雑だが効果的な正規表現を使用することで克服できます。

この正規表現の重要な点は、部分文字列の前に偶数の引用符がある場合、その部分文字列が引用符の外側にあることを観察することです。これは、次の先読みアサーションとして表すことができます。

(?=([^"]*"[^"]*")*[^"]*$)

このアサーションにより、前のテキストに偶数の引用符が含まれ、その後に現在の部分文字列が続くことが保証されます。

エスケープされた引用符を除外するには、バックスラッシュも考慮する必要があります。正規表現は少し複雑になります:

\+(?=([^"\]*(\.|"([^"\]*\.)*[^"\]*"))*[^"]*$)

この正規表現は、まず引用符以外の文字 (S) を超えて進みます。バックスラッシュまたは引用符に遭遇すると、次の文字 (バックスラッシュの場合) を無視するか、そうでない場合はエスケープされていない次の引用符に進みます。

この正規表現はやや複雑ですが、効果的にすべてのインスタンスに一致します。正規表現が引用符で囲まれていないため、JavaScript の Split() メソッドと replace() メソッドで望ましい結果が得られます。

以上がJavaScript で引用符の外側にある正規表現インスタンスを照合する方法: 包括的なガイドの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。