2012-01-21 14 views
0

だから私はこのような要素を持つリストの入力を持っている:分割リスト項目

「街の& 修理&道路を再舗装工事再建のための暦年2008」

と私はリストを繰り返しています。

re.search('\\d+\s\sfor',string) 

私は要素の一つの試合を確認したら、私は分割したい:各反復について、最初の私は、パターンINTspacespaceforは、私は私が行うことができます知っている文字列であることを確認したいですこの要素をINTと "for"の間の適切な位置にある2つの要素に変換します。これを行う簡単な方法はありますか?

ので、このためのサンプル出力は次のようになります。

[item1,item2,...item10,"calendar year 2008","for construction reconstruction resurfacing & repair of streets & roads",item11,item12...] 
+1

OPは二重のスペースを使用した例句を書いたが、フォーマットツールが離れていた見て使用することができますそれらと一緒に。 –

答えて

3

あなたは背後に見て、先に

re.split('(?<=\d)\s\s(?=for)',string) 
+0

nice!私は正規表現のより深い理解が必要なように見えます。 – Oliver

+1

@Oliverここでは先読みと背後を見るための良いマニュアルです:http://www.regular-expressions.info/lookaround.html –