Yaklaşık 80 000 satırlık bir .asc dosyası var ve dosyadan belirli satırları çıkarmak istiyorum.'two' İki düzenli ifade arasındaki düzenli ifade
Bilgi/satır çıkarmak istediğim alanları (150 alan) belirli satırlara (bir öncekinden ve bir sonra) koyarak daha kolay hale getirmeye çalıştım.
'start' regex (MSG\s*(\d{1,8})\sSHOWING\sSENTENCE)
yüzden bu 'start' regex tekrar görünür kadar şey iade olmaz meydana yüzden bu meydana
'end' regex (MSG\s*(\d{1,8})\sSENTENCE\sGONE)
sonra hatlar için bakmak istiyorum.
Orada bu iki regex ifadeleri arasındaki çizgilerin yüzlerce olabilir, ama ben yalnızca eşleşen olanlar isteyeceksiniz bu düzenli ifade en Python içinde bu konuda giderdim nasıl
(EFIX\sR\s*(\d{1,8})\s*(\d{1,8})\s*(\d{1,3})\s*(\d{1,3}).\d\s*(\d{1,3}).\d\s*(\d{1,4}) or (ESACC\sR\s*(\d{1,8})\s*(\d{1,8})\s*(\d{1,3})\s*(\d{1,3}).\d\s*(\d{1,3}).\d\s*(\d{1,4}).
?
Burada yakut benzer bir Q & A var: http://stackoverflow.com/questions/17457440/ruby-line-by-li ne-match-range Ruby, .. operatörünü destekler. Python'da bir döngüde kodlamanız gerekir. Ancak aynı Soru-Cevap, bunun için de örnekler içeriyor. –
"EFIX ..." deseninde, herhangi bir tek karakterle eşleşen bir nokta veya nokta olan '. – Quinn
Bu tam anlamıyla bir nokta yes (@ccf). Ben typicall şuna benzer: ESACC R 1075390 144,3 \t 526,2 \t 54,3 \t 547,2 \t 1,86 \t 162 –