2017-07-26 41 views
0

我有一行字: Dane osobowe po zmianie (dopisane): Surname1 Name1 (RYSZARD, EUGENIA) Zam. 99-100 Muczyn (Geod) 6A, Płeć: K, PESEL: 99945104321 Jednostki Rejestrowe osoby (w gminie): 0001.G16 0002.G56 Surname2 Name2 (ANDRZEJ, AGNIESZKA) Zam. 99-100 Muczyn (Geod) 4A, Płeć: K Jednostki Rejestrowe osoby (w gminie): 0001.G16 0001.G07 0001.G43 Surname1 Name1 Name2 (ANDRZEJ, AGNIESZKA) Zam. 99-100 MUCZYN (Geod) 4A, Płeć: M Jednostki Rejestrowe osoby (w gminie): 0001.G16休息後多次匹配字線 - 蟒蛇

我想分成多行一定的模式:

Dane osobowe po zmianie (dopisane): Surname1 Name1 (RYSZARD, EUGENIA) Zam. 99-100 Muczyn (Geod) 6A, Płeć: K, PESEL: 99945104321

Jednostki Rejestrowe osoby (w gminie): 0001.G16 0002.G56

Surname2 Name2 (ANDRZEJ, AGNIESZKA) Zam. 99-100 Muczyn (Geod) 4A, Płeć: K

Jednostki Rejestrowe osoby (w gminie): 0001.G16 0001.G07 0001.G43

Surname1 Name1 Name2 (ANDRZEJ, AGNIESZKA) Zam. 99-100 MUCZYN (Geod) 4A, Płeć: M

Jednostki Rejestrowe osoby (w gminie): 0001.G16

我有一個代碼:

for i in range(0, len(data)): data[i] = data[i].replace(' Jednostki', '\nJednostki')

data我有單線如上所述。有了這個,我設法打破它這樣:

Dane osobowe po zmianie (dopisane): Surname1 Name1 (RYSZARD, EUGENIA) Zam. 99-100 Muczyn (Geod) 6A, Płeć: K, PESEL: 99945104321

Jednostki Rejestrowe osoby (w gminie): 0001.G16 0002.G56 Surname2 Name2 (ANDRZEJ, AGNIESZKA) Zam. 99-100 Muczyn (Geod) 4A, Płeć: K

Jednostki Rejestrowe osoby (w gminie): 0001.G16 0001.G07 0001.G43 Surname1 Name1 Name2 (ANDRZEJ, AGNIESZKA) Zam. 99-100 MUCZYN (Geod) 4A, Płeć: M

Jednostki Rejestrowe osoby (w gminie): 0001.G16

那麼,問題是,我wan't它0001.G16 0002.G56後進一步突破或Jednostki Rejestrowe osoby (w gminie): 0001.G16 0001.G07 0001.G43

可能有正則表達式需要,但我該如何處理0001.G**的數量正在發生變化。

乾杯!

+1

請具體規則。 – revo

+0

我想在Jednostki Rejestrowe osoby(w gminie)之後分行:0001.G16 0001.G07 0001.G43',例如在Jednostki Rejestrowe osoby(w gminie)之後:0001.G16'0001的數目。 G **'可能會改變。 –

+0

Python版本是什麼?如果是3.5+,試試're.sub(r'(\ .G \ d +)\ s *(?=(?:(?!\。G \ d)。)*?Jednostki \ b)|(Jednostki)\ b','\\ 1 \ n \\ 2',data)'添加換行符,然後拆分。 –

回答