Python
 Computer >> コンピューター >  >> プログラミング >> Python

PerlとPythonで正規表現を比較する方法は?


最も基本的な正規表現機能は、ほぼすべての実装でほぼ同じです。ワイルド文字。、数量詞*、+、および?、アンカー^および$、[]内の文字クラス、および後方参照\ 1、\ 2、\3など。

交代は|で示されますPerlとPythonで

PerlとPythonでは、(?aimsx)を使用して正規表現を変更できます。たとえば、(?i)は、式で大文字と小文字を区別しません。これらの修飾子は、両方の言語で同じ意味を持ちます。また、どちらの言語でも、(?#…)を使用して正規表現でコメントを導入できます。

PerlとPythonは、同じ構文((?=)、(?!)、(?<=)、および(?<!))でポジティブルックアラウンドとネガティブルックアラウンドをサポートします。

どちらの言語も、アンカー\Aと\Z、および文字クラス\dと\D、\sと\Sをサポートしています。

どちらの言語でも、キャプチャに(?P )で名前を付け、(?P =name)で参照できます。 Perlには、Pythonの構文をサポートすることに加えて、このための独自の構文があります。


  1. Pythonで正規表現のグループ化はどのように機能しますか?

    グループ化 正規表現の一部を括弧で囲んでグループ化します。これは、単一の文字ではなく、グループ全体に演算子を適用する方法です。 グループのキャプチャ 括弧は部分式をグループ化するだけでなく、後方参照も作成します。正規表現のグループ化された部分と一致する文字列の部分は、後方参照に格納されます。後方参照の助けを借りて、正規表現の一部を再利用します。 実際のアプリケーションでは、2つ以上の選択肢のいずれかに一致する正規表現が必要になることがよくあります。また、数量詞を複数の式に適用したい場合もあります。これらはすべて、括弧でグループ化することで実現できます。そして、垂直バー(|)と交互に使用し

  2. Pythonで正規表現修飾子はどのように機能しますか?

    正規表現リテラルには、マッチングのさまざまな側面を制御するためのオプションの修飾子が含まれる場合があります。修飾子はオプションのフラグとして指定されます。排他的論理和(|)を使用して複数の修飾子を指定でき、これらのいずれかで表すことができます- 以下は、さまざまなre修飾子とその機能のリストです。 1. re.I 大文字と小文字を区別しないマッチングを実行します。 2. re.L 現在のロケールに従って単語を解釈します。この解釈は、アルファベットのグループ(\wと\W)、および単語の境界の動作(\bと\B)に影響します。 3 re.M $を(文字列の終わりだけでなく)行の