我有一個字符串爆炸的字符串:有沒有辦法用一個「模式」
mystring = "Foo: Bar (Titi) Foo-age: 50 Airplanes: 12:1 12:3 12:4 12:5 [...] Next Hop: LAX Origine ID: 49 Hop List 2 4 9 0 3 [...]"
有沒有辦法使用的模式,像拆分此字符串:
pattern = {"Foo", "Foo-age", "Airplanes", "Next Hop", "Origine ID", "Hop List"}
和那麼
mylist = somefunction(mystring , pattern)
print mylist
--> {"Foo":"Bar (Titi)","Foo-age" : 50, "Airplanes": ["12:1","12:3",...], ...}
這是可能的蟒蛇?
[編輯]
某些樣本數據 - 5-COL csv文件瓦特/定界符 「」
col-1,col-2,Path: 9876 (IGP) Local-Pref: 310000 MED: 0 Communities: 1234:6 1234:95 1234:101 1234:202 1234:500 1234:903 1234:3369 1234:8000 1234:8002 1234:16925 9876:19827 Next Hop: x.x.127.151 Originator ID: x.x.155.144 Cluster List: 0.0.29.99 0.0.29.97 0.0.26.245 0.0.2.179 ,col-4,col-5
col-1,col-2,Path: 9876 (IGP) Local-Pref: 310000 MED: 0 Communities: 1234:3 1234:95 1234:101 1234:202 1234:13705 9876:19941 Next Hop: x.x.127.61 Originator ID: x.x.137.37 Cluster List: 0.0.29.99 0.0.29.97 0.0.1.195 ,col-4,col-5
col-1,col-2,Path: 9876 (IGP) Local-Pref: 310000 MED: 0 Communities: 1234:2 1234:95 1234:101 Next Hop: x.x.127.149 Originator ID: x.x.137.29 Cluster List: 0.0.29.99 0.0.29.98 0.0.2.240 ,col-4,col-5
col-1,col-2,Path: 9876 (IGP) Local-Pref: 310000 MED: 0 Communities: 1234:6 1234:95 1234:101 1234:202 1234:500 1234:903 1234:3369 1234:8000 1234:8002 1234:16924 9876:19827 Next Hop: x.x.127.151 Originator ID: x.x.155.144 Cluster List: 0.0.29.99 0.0.29.97 0.0.26.245 0.0.2.179 ,col-4,col-5
我可以使用正則表達式,但我的字符串對每一行不完全一樣的格式(它來自一個「」「csv」「」文件) – Franquis 2012-03-07 09:12:24
如果正則表達式不會這樣做,那麼它是可疑的,你可以在一行。也許你應該更清楚地解釋這個問題,因爲正則表達式可以在需要時忽略換行符之類的東西。顯示一些給您帶來麻煩的示例數據。 – SpliFF 2012-03-07 09:17:36
我相信基於csv文件的解決方案可能會更容易。你能否給這個問題增加一個例子? – jcollado 2012-03-07 09:18:06