非常に貧しいタイトルは - あなたは、私は次のようで正規表現の一致複数の結果
[<str1>, <str2>,...,<strX>]
リストを返すようにしようとしている
を助けることができると感じた場合、それを更新して自由に感じます文字列:
'%%<str1>%%_Anything_Can_Be_Here_%%<str2>%%
'
次のコードは動作しますが、もし」を数行内のの値が2より大きい場合は、最初と最後のセット「%%
」の間のすべての値をとります。
>>> import re
>>> str = '%%nas_ip_address%%'
>>> re.match('%%(.*)%%', str, re.DOTALL).group(1)
'nas_ip_address'
>>> str = '%%nas_ip_address%%:/vx/%%sfs_storage_pool%%'
>>> re.match('%%(.*)%%', str, re.DOTALL).group(1)
'nas_ip_address%%:/vx/%%sfs_storage_pool'
>>> re.match('%%(.*)%%', str, re.DOTALL).groups()
('nas_ip_address%%:/vx/%%sfs_storage_pool',)
何とか正規表現を使って文字列から['nas_ip_address', 'sfs_storage_pool']
を抽出する方法はありますか?
これを試してみて、同じ文字列に複数の結果を一致させたい場合は
'(%{2、})(。*?)\ 1'?キャプチャグループ2 – ctwheels