Python で文字列リテラルの前に \'r\' を使用する意味は何ですか?

Linda Hamilton
リリース: 2024-10-17 20:00:04
オリジナル
746 人が閲覧しました

What is the Significance of Using

文字列リテラルの前に「r」を付けることの重要性

Python で複数行の正規表現を使用する場合、次のような問題が発生する可能性があります。接頭辞「r」。

regex = re.compile(
    r'^[A-Z]'
    r'[A-Z0-9-]'
    r'[A-Z]$', re.IGNORECASE
)
ログイン後にコピー

のような式でこの接頭辞が見つかると、文字列リテラルの "r" の目的は何ですか?

生の文字列修飾子

文字列リテラルの前の「r」接頭辞は、それを「生の文字列」として指定します。生の文字列には重要な特性があります。通常は "" で表されるエスケープ シーケンスは文字通りに解釈されます。

次の例を考えてみましょう。

'\n'  # interpreted as a newline character
ログイン後にコピー

先頭に「r」を付けると、エスケープはシーケンスは文字列内に保持されます。

r'\n'  # literal characters \ and n
ログイン後にコピー

エスケープ文字列と生の文字列

この区別は、エスケープ シーケンスを文字通り使用する必要がある場合に重要です。たとえば、文字列内のバックスラッシュ文字自体を表すには、「r」を使用して、次の文字列引用符がエスケープされないようにします。

r'\'
ログイン後にコピー
ログイン後にコピー

さらに、「r」を使用して、単一のバックスラッシュを含めることもできます。行継続 (構文エラーになります):

r'\'
ログイン後にコピー
ログイン後にコピー

結論

文字列リテラルの前に「r」を付けると、エスケープを保持したまま生の文字列に変換されます。シーケンスとそのリテラルの使用を許可します。この区別は、複数行にわたる正規表現を使用する場合、または特殊文字として解釈されずに文字列にエスケープ シーケンスを含める必要がある場合に不可欠です。

以上がPython で文字列リテラルの前に \'r\' を使用する意味は何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!