多くの異なるソースからの変数に依存する正規表現を構築しようとしています。
ソース:
dict1 = {"a":"somevalue","b":"somevalue","c":"somevalue"}
source2 = "x"
source3 = "_1"
上記のソースから取得する値に依存する正規表現を構築したいと考えています。結果の正規表現は以下のようになります。
^(a|b|c)x[0-9]{0,10}_1
どこ:
(a|b|c)
のキーでdict1
あり、dict
1 つ以上の値を持つことができます。x
からの値ですsource2
。-1
から取得する値ですsource3
。
基本的にソースを連結して正規表現を構築するという解決策に満足していません。他にもっと良い解決策があるかどうか疑問に思っていました。これが私が思いついた解決策です。
group1 = "|".join(dict1.keys())
regex = "^("+group1+")"+source2+"[0-9]{0,10}"+source3
あなたの助けに感謝します。かもre.verbose
?しかし、何が最善の方法なのかわかりません。