0

以下のケースでは、"|"条件を使用して複数の検索パターンを照合し、すべての検索パターンを値に置き換えています。うまくいきました。しかし、pythonには、すべてのパターンを書き込んで検索パターンで呼び出すことができるMACROタイプのものがありますか? 一度にすべてのパターンを置き換えます。ほぼ 20 ~ 30 の検索パターンを作成する必要があるためです。これを実装するのを手伝ってください。

前もって感謝します。

import re

st = '''<h5>Reglar</h5>
<h5>Lateral</h5>
<h5>Daily</h5>
<h5>Weekly</h5>
<h5>Monthly</h5>
<h5>Quaterly</h5>
<h5>Yearly</h5>
<h5>Halfyearly</h5>'''

vr = re.sub(r'(?i)<h5>(Lateral|Halfyearly|Monthly)</h5>', "<h5>FINAL</h5>", st)
print vr
4

1 に答える 1

2

Python にはマクロがありません。

あなたが何を求めているのかを確実に理解することはできませんが、

正規表現を含む文字列は、プログラムで構築できます。

frequncy_str = ('Lateral', 'Daily', 'Weekly', 'Monthly')
re_str = '(?i)<h5>(' + '|'.join(frequency_str) + ')</h5>'

パフォーマンスを向上させるために、マッチを数回実行する場合は、正規表現をコンパイルする必要があります。

  re_pat = re.compile(re_str)
于 2013-02-14T07:07:30.080 に答える