регулярное выражение с "границами"
Доброго времени суток всем.
Как вам известно \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
Как можно это организовать правильно?
|