2016-08-08 6 views
3

Iがobj-Cでのreturn文を一致させるために、そのregexpをPythonで新しい行を無視する方法は?

return(\s+([^"\n;]+))?; 

のような正規表現を使用しますが、私はこのようなパイソンを通してそれを使用する場合:

re.sub(r'return(\s+([^"\n;]+))?;',r'{\g<0>}',str(content)) 

私はそれは次のように一致していることを見つけますこのステートメント

//please {return 
[self funcA];} 

となります。どうすれば対処できますか?

答えて

2

あなたの正規表現にはいずれの空白にも一致する\sがあると思います。

あなただけ[ \t]にリテラルスペースまたはタブと一致する場合があります

r'return([ \t]+([^"\n;]+))?;' 

demo)または - より良い:

r'return[ \t]+[^"\n;]*;' 

the regex demo

+0

はどうもありがとうございまし参照してください、と私どのように私はこれらの状況に一致することができます======= >>>返信@ "こんにちは世界"; "この質問を返す"; 、私はこのような正規表現を変更するとき\ t] + [^ \ n;] *; 'これは<< "この質問を返す"ようになります。 >>このようなエラーは "{この質問を返す"; } – CurryChen

+0

申し訳ありませんが、https://regex101.com/r/mM6mK2/3のようなデモリンクを共有できますか? –

+0

https://regex101.com/r/mM6mK2/4およびhttps://regex101.com/r/mM6mK2/5ありがとう – CurryChen

関連する問題