Форум сайта python.su
Есть файл с таким содержимым:
sssss 1
1
dd.dddddd dd.dddddd
dd.dddddd dd.dddddd
dd.dddddd dd.dddddd
dd.dddddd dd.dddddd
dd.dddddd dd.dddddd
dd.dddddd dd.dddddd
dd.dddddd dd.dddddd
dd.dddddd dd.dddddd
dd.dddddd dd.dddddd
sss sss
sssss ssssss
ssssssss s s s sss
1
dd.dddddd dd.dddddd
dd.dddddd dd.dddddd
dd.dddddd dd.dddddd
dd.dddddd dd.dddddd
sss sss
sssss ssssss
ssssssss s s s ssssss
1
dd.dddddd dd.dddddd
dd.dddddd dd.dddddd
dd.dddddd dd.dddddd
dd.dddddd dd.dddddd
sss sss
sssss ssssss
ssssssss s s s ssss
Офлайн
from PyQt4 import Qt as qt
import sys, re
app = qt.QApplication(sys.argv)
mw = qt.QMainWindow()
fr = qt.QFrame()
lt = qt.QVBoxLayout()
te = qt.QTextEdit()
te2 = qt.QTextEdit()
btn = qt.QPushButton("find")
mw.setCentralWidget(fr)
fr.setLayout(lt)
lt.addWidget(te)
lt.addWidget(te2)
lt.addWidget(btn)
te.setPlainText("""
11.111111 22.222222
aaa
33.333333 44.444444
33.333333 44.444444
bbb
""")
def findre():
text = te.toPlainText()
pattern = r"\d{2}\.\d{6}\s\d{2}\.\d{6}"
text2 = "\n".join(re.findall(pattern, text))
te2.setPlainText(text2)
btn.clicked.connect(findre)
mw.show()
app.exec_()
Офлайн
круто! спасибо, Studentik, пойду пробовать.
Офлайн
прдробнее изучил код, паттерн у меня был такой \d+\.\d+\s\d+\.\d
твой паттерн выдергивает значения парами, а мне нужно прямо группой. Тоесть каждая группа значений это характеристика объекта, соответственно мне нужно их дернуть не просто парами, а именно группой, а по парам я их потом смогу в цикле разобрать.
Наверное паттерн нужно как-то сгруппировать?
Офлайн
Просто обрабатывайте файл построчно. Попала строка под вашу регулярку - начало группы. И пока строки соответствуют регулярке - добавляйте в группу. Как не совпала - сброс и дальше следующую группу начинаете.
Офлайн
2 PooH
после долгих экспериментов я тоже пришел к такому решению:)) какой смысл мучить регекспы, когда всё можно сделать просто сравнением и построчной обработкой. Особенно если учесть, что регулярки это не моя сильная сторона)
Офлайн
Frank“Была у программиста проблема, решил он ее при помощи регулярных выражений, теперь у него две проблемы” :)
после долгих экспериментов я тоже пришел к такому решению:)) какой смысл мучить регекспы, когда всё можно сделать просто сравнением и построчной обработкой. Особенно если учесть, что регулярки это не моя сильная сторона)
Офлайн