сгенерированный сообщение периодический компьютер (упрощенный):многострочный шаблону в Python
Hello user123,
- (604)7080900
- 152
- minutes
Regards
Использование Python, как можно извлечь "(604) 7080900", "152", "минут" (т.е. любой текст после ведущего шаблона "- "
) между двумя пустыми строками (пустая строка - \n\n
после «Hello user123» и \n\n
до «С уважением»). Еще лучше, если список строк результатов хранится в массиве. Благодаря!
изменить: количество строк между двумя пустыми строками не фиксировано.
2nd редакция:
например.
hello
- x1
- x2
- x3
- x4
- x6
morning
- x7
world
x1 x2 x3 хороши, так как все линии окружены 2 пустых строк, x4 также хорошо по той же причине. x6 не является хорошим, потому что после него нет пустой строки, x7 не хорош, поскольку перед ним нет пробела. x2 хорош (не как x6, x7), потому что линия впереди - хорошая линия, и строка, следующая за ней, также хороша.
это условие может быть не ясно, когда я отвечал на вопрос:
a continuous of good lines between 2 empty lines
good line must have leading "- "
good line must follow an empty line or follow another good line
good line must be followed by an empty line or followed by another good line
благодаря
@Thomas Wouters, «для строки» не является надежным (в противном случае я не стану отмечать этот вопрос многострочным ;-) Я могу начать только сопоставление _after_ «\ n \ n-» (два строчных файла, затем главный знак минус и пространство) – ohho
Это не было (и все еще не так) в вашем вопросе, но основной подход остается тем же. Вы все равно можете использовать итерацию поверх строк, но вам нужно будет уточнить, что у вас есть на самом деле, и действительно хотите, если вы хотите, чтобы я записал пример. Что делать, если есть линии, которые не начинаются с «-» между строками? Что делать, если есть несколько таких блоков? Что делать, если строки не пусты, а просто имеют пробелы? –
см. Мое второе редактирование. – ohho