У меня есть файл данных, содержащий записи о событиях в следующей форме:Как предотвратить повреждение событий в файле данных с помощью Python?
<event>
4 0 0.5048900E-01 0.1915537E+03 0.7546771E-02 0.1157067E+00
21 -1 0 0 503 502 0.00000000000E+00 0.00000000000E+00 0.20916118194E+03 0.20916118194E+03 0.00000000000E+00 0. 1.
21 -1 0 0 501 503 0.00000000000E+00 0.00000000000E+00 -0.19069665391E+03 0.19069665391E+03 0.00000000000E+00 0. 1.
6 1 1 2 501 0 0.64272189331E+02 0.51311781060E+02 -0.47339360468E+02 0.19731656861E+03 0.17300000000E+03 0. -1.
-6 1 1 2 0 502 -0.64272189331E+02 -0.51311781060E+02 0.65803888495E+02 0.20254126725E+03 0.17300000000E+03 0. -1.
</event>
<event>
4 0 0.5048900E-01 0.1923878E+03 0.7546771E-02 0.1156325E+00
21 -1 0 0 503 502 0.00000000000E+00 0.00000000000E+00 0.24573125562E+02 0.24573125562E+02 0.00000000000E+00 0. 1.
21 -1 0 0 501 503 0.00000000000E+00 0.00000000000E+00 -0.15553273337E+04 0.15553273337E+04 0.00000000000E+00 0. -1.
6 1 1 2 501 0 0.98476452980E+01 0.83588711195E+02 -0.62504106700E+03 0.65397965120E+03 0.17300000000E+03 0. 1.
-6 1 1 2 0 502 -0.98476452980E+01 -0.83588711195E+02 -0.90571314110E+03 0.92592080802E+03 0.17300000000E+03 0. -1.
</event>
<event>
4 0 0.5048900E-01 0.1782060E+03 0.7546771E-02 0.1169551E+00
21 -1 0 0 501 502 0.00000000000E+00 0.00000000000E+00 0.17068413103E+02 0.17068413103E+02 0.00000000000E+00 0. 1.
21 -1 0 0 502 503 0.00000000000E+00 0.00000000000E+00 -0.19878188087E+04 0.19878188087E+04 0.00000000000E+00 0. 1.
6 1 1 2 501 0 0.40928013982E+02 -0.12380831554E+02 -0.73177042255E+03 0.75315691502E+03 0.17300000000E+03 0. 1.
-6 1 1 2 0 503 -0.40928013982E+02 0.12380831554E+02 -0.12389799731E+04 0.12517303068E+04 0.17300000000E+03 0. 1.
</event>
<event>
4 0 0.5048900E-01 0.1748201E+03 0.7546771E-02 0.1172912E+00
21 -1 0 0 501 502 0.00000000000E+00 0.00000000000E+00 0.50201908406E+02 0.50201908406E+02 0.00000000000E+00 0. -1.
21 -1 0 0 502 503 0.00000000000E+00 0.00000000000E+00 -0.81442244278E+03 0.81442244278E+03 0.00000000000E+00 0. -1.
6 1 1 2 501 0 -0.76531495601E+01 -0.23968586903E+02 -0.16487721432E+03 0.24030513864E+03 0.17300000000E+03 0. -1.
-6 1 1 2 0 503 0.76531495601E+01 0.23968586903E+02 -0.59934332005E+03 0.62431921254E+03 0.17300000000E+03 0. -1.
</event>
<event>
4 0 0.5048900E-01 0.2161793E+03 0.7546771E-02 0.1136764E+00
21 -1 0 0 501 502 0.00000000000E+00 0.00000000000E+00 0.44614769518E+03 0.44614769518E+03 0.00000000000E+00 0. -1.
21 -1 0 0 502 503 0.00000000000E+00 0.00000000000E+00 -0.11252245546E+03 0.11252245546E+03 0.00000000000E+00 0. 1.
6 1 1 2 501 0 0.12142710736E+03 -0.45386865351E+02 0.24023253309E+03 0.32317979501E+03 0.17300000000E+03 0. -1.
-6 1 1 2 0 503 -0.12142710736E+03 0.45386865351E+02 0.93392706626E+02 0.23549035564E+03 0.17300000000E+03 0. 1.
</event>
Я собираюсь генерировать что-то вроде этого, и процесс генерации не будет безошибочной; некоторые из записей событий будут искажены и повреждены. Как я могу обнаружить и удалить записи событий, которые не относятся к формам, показанным выше, используя Python?
Благодарим вас за руководство по использованию регулярного выражения в Python. В вашем решении очень ясно, что онлайновый тестер регулярных выражений выглядит очень полезным (хотя мне кажется, что мне нужно немного узнать о регулярном выражении, чтобы хорошо его понять). – d3pd