2017-01-03 8 views
0

現在、サブプロセスを使用してファイルから文字列を抽出する大規模なデータ処理スクリプトを作成しています。私が受けていた文字列はの形式である:特殊文字間の第1グループと第3グループの数字を一致させる正規表現

-R##/##/##/##

この例として、私が思い付くしようとしています-R-120/-115/-30/-20(4つの数字が正または負のいずれかになります)

だろう上の例では、-120-30が必要です。

誰も正しい方向に私を操縦して、これを行うことについてきれいな道を行くことができますか?

+0

'R'-R([+ - \ D] +)/ [+ - \ d] + /([+ - \ d] +)/ [+ - \ d] + ''カッコは「捕捉グループ」 –

+0

正の数値は' + ' ? – moogle

+0

@moogle正の数字には何も表示されません。 – Harrison

答えて

1

あなたの数字をつかむために2つのキャプチャグループとpythonでこの正規表現を使用することができます。

>>> s = '-R-120/-115/-30/-20' 
>>> print re.findall(r'^\D*?([-+]?\d+)\D*?[-+]?\d+\D*?([-+]?\d+)', s) 

[('-120', '-30')] 

RegEx Demo

関連する問題