![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
![]() Доброго времени суток всем.
Как вам известно \b определяет границы. Есть такой текст: 1. 1a) aaa 1b) bbb 2a) ccc 2b) ddd 2c) eee 3a) fffff 3c) ggg 2. 1a) nnn 1c) ww 2a) bbb 2b) ddd 3a) ccc 3b) ddd .... и т.д. Текст вертикальный в виде теста. Его надо перестроить в табличную форму, т.е. __________________________________________________ ___________________________ # | 1a) | 1b) | 1c) | 2a) | 2b) | 2c) | 3a) | 3b) | 3c) | __________________________________________________ ___________________________ 1. | aaaaaaaa | bbbbbbb | | cccccc ccc | dd ppp | eeeeeeeee | ffffffff | | ggggg | 2. | nnn nn | | wwwww | bbbbbbb | ddd vvvv | | cccccc | dd ppp | | ...... __________________________________________________ ___________________________ После удаления \r\n: Для выризания 1a): /\b1a\)(.+)1[b|c]\)\b/ - но если 1b) и 1c) не участвуют то эта регулярка не работает корректно. Если для 1a): /\b1a\)(.+)[1b|1c|2a]\)\b/ - то в этом случае регулярка возвращает всех трех значений (1b, 1c, 2a) в одном 1a Как можно это организовать правильно? |