2012-03-08 6 views
1

私はPythonの正規表現に新しいです必要に応じて、十分なのPerlのPythonへの正規表現のヘルプは

はPerl、Pythonでこれを行う方法についての情報が見つかりませんでした:

my $a="some pattern"; 
my $b="some other pattern"; 
my $str =~ s/\s*$a\s+\-\-\>\s+$b/ $b/; 

$ aと$ bの変化を、そして特定の文字列を置換する必要があります。 Pythonでこれを行うにはどうすればよいですか?

答えて

2
import re 
a = "some pattern" 
b = "some other pattern" 
# Create the regular expression. '-' and '>' don't need escaping 
pattern = re.compile(r'\s*' + a + '\s+-->\s+' + b) 
# 'str' is a poor variable name in Python; it hides a built-in 
result = pattern.sub(' ' + b, result) 

私は本当にあなたが実際に作業を正規表現方法を理解すると仮定すると、十分な情報を見つけることができない可能性がどのように知りませんが。あなたはその文書を読んだことがありますか?

Perlの/ oフラグに相当するものはありません。正規表現を一度コンパイルして再利用したいのであれば、それを正確に実行してください。 re.compile行が1回だけ実行されるように、patternの範囲で再生します。