用于处理带标题的多个列表的正则表达式

时间:2017-01-13 17:32:45

标签: regex

对于措辞不佳的标题道歉,我很难解释我在没有展示的情况下想做什么。

我所拥有的是一个绝对庞大的表列表及其关联列,格式如下:

TABLE_1
col_1
col_2
col_3
TABLE_2
col_1
col_2
col_3
TABLE_3
col_1
col_2
col_3

请注意,表名称为大写,包含0个或更多分隔单词的下划线,而列名称为小写,包含0个或更多分隔单词的下划线。我需要的是以下格式:

TABLE_1,col_1
TABLE_1,col_2
TABLE_1,col_3
TABLE_2,col_1
TABLE_2,col_2
TABLE_2,col_3
TABLE_3,col_1
TABLE_3,col_2
TABLE_3,col_3

我一直试图通过使用Sublime的正则表达式查找和替换来做到这一点,但我得到的最接近的是:

Find: ([A-Z].*)\n(^([a-z].*\n)+?)(?=[A-Z].*)
Replace: $1,$2

我猜这几乎可行,或许不是。结果如下:

TABLE_1,col_1
col_2
col_3
TABLE_2,col_1
col_2
col_3
TABLE_3,col_1
col_2
col_3

正则表达式可能不是最实用的解决方法,我不知道。但我总是试图提高我的正则表达能力,所以我喜欢使用这样的问题作为学习工具。任何指针或建议将不胜感激。

0 个答案:

没有答案