【发布时间】:2020-09-10 01:21:29
【问题描述】:
所以我遇到了一个问题数据集,它包含一个可变的字母序列,后面跟着一个六个数字的序列。
输入数据流
"A", "a", "2.07", "2.35", "39.00", "82.20", "8.8", "3.80", "B", "2.26", "2.25", "40.00", "80.80", "8.1", "1.86", "D", "Et", "2.07", "2.22", "41.00", "83.80", "8.8", "3.87", "F", "2.05", "2.15", "43.00", "82.20", "8.4", "3.11", "Bc", "2.08", "2.12", "48.00", "82.60", "8.3", "2.47", "Gf", "H", "I", "2.08", "2.10", "46.00", "82.20", "8.1", "2.90", "J", "K", "1.95", "2.08", "38.00", "83.40", "8.7", "1.63", "L", "M", "1.89", "2.07", "45.00", "83.80", "9.0", "1.84", "N", "2.06", "2.05", "41.00", "80.60", "9.0", "4.09", "O", "P", "1.86", "2.04", "48.00", "81.60", "8.6", "2.60", "Qst", "R", "1.95", "2.03", "44.00", "82.80", "8.8", "1.40", "S", "2.03", "2.02", "40.00", "81.40", "8.2", "1.74", "T", "1.95", "2.01", "43.00", "81.80", "9.0", "2.30", "Unh", "1.96", "2.00", "44.00", "82.60", "9.2", "2.40", "V", "W", "C", "1.98", "1.97", "40.00", "82.00", "8.1", "1.15", "Yu", "1.90", "1.96", "41.00", "82.80", "9.6", "2.08", "Z", "a", "bi", "1.90", "1.95", "42.00", "84.20", "9.6", "1.69"
问题:
我想合并每个字母分组,在文本数据集中,我在创建正确的正则表达式以去除字母之间的 "、" 时遇到了问题。我的想法是关注字母之间的 ", 并用空格替换它们,从而使字母合并。
((?:[A-Za-z]*)(", ")(?:[A-Za-z]*))*
上面的意图是创建一个命名的中间捕获,忽略外部并将中间捕获替换为空。我错过了什么?所有的帮助都将被亲切地接受并不胜感激。
预期结果:
"Aa", "2.07", "2.35", "39.00", "82.20", "8.8", "3.80", "B", "2.26", "2.25", "40.00", "80.80", "8.1", "1.86", "DEt", "2.07", "2.22", "41.00", "83.80", "8.8", "3.87", "F", "2.05", "2.15", "43.00", "82.20", "8.4", "3.11", "Bc", "2.08", "2.12", "48.00", "82.60", "8.3", "2.47", "GfHI", "2.08", "2.10", "46.00", "82.20", "8.1", "2.90", "JK", "1.95", "2.08", "38.00", "83.40", "8.7", "1.63", "LM", "1.89", "2.07", "45.00", "83.80", "9.0", "1.84", "N", "2.06", "2.05", "41.00", "80.60", "9.0", "4.09", "OP", "1.86", "2.04", "48.00", "81.60", "8.6", "2.60", "QstR", "1.95", "2.03", "44.00", "82.80", "8.8", "1.40", "S", "2.03", "2.02", "40.00", "81.40", "8.2", "1.74", "T", "1.95", "2.01", "43.00", "81.80", "9.0", "2.30", "Unh", "1.96", "2.00", "44.00", "82.60", "9.2", "2.40", "VWC", "1.98", "1.97", "40.00", "82.00", "8.1", "1.15", "Yu", "1.90", "1.96", "41.00", "82.80", "9.6", "2.08", "Zabi", "1.90", "1.95", "42.00", "84.20", "9.6", "1.69"
简化视图(带换行符)
初始数据集
"A", "a", "2.07", "2.35", "39.00", "82.20", "8.8", "3.80",
"B", "2.26", "2.25", "40.00", "80.80", "8.1", "1.86",
"D", "Et", "2.07", "2.22", "41.00", "83.80", "8.8", "3.87",
"F", "2.05", "2.15", "43.00", "82.20", "8.4", "3.11",
"Bc", "2.08", "2.12", "48.00", "82.60", "8.3", "2.47",
"Gf", "H", "I", "2.08", "2.10", "46.00", "82.20", "8.1", "2.90",
"J", "K", "1.95", "2.08", "38.00", "83.40", "8.7", "1.63",
"L", "M", "1.89", "2.07", "45.00", "83.80", "9.0", "1.84",
"N", "2.06", "2.05", "41.00", "80.60", "9.0", "4.09",
"O", "P", "1.86", "2.04", "48.00", "81.60", "8.6", "2.60",
"Qst", "R", "1.95", "2.03", "44.00", "82.80", "8.8", "1.40",
"S", "2.03", "2.02", "40.00", "81.40", "8.2", "1.74",
"T", "1.95", "2.01", "43.00", "81.80", "9.0", "2.30",
"Unh", "1.96", "2.00", "44.00", "82.60", "9.2", "2.40",
"V", "W", "C", "1.98", "1.97", "40.00", "82.00", "8.1", "1.15",
"Yu", "1.90", "1.96", "41.00", "82.80", "9.6", "2.08",
"Z", "a", "bi", "1.90", "1.95", "42.00", "84.20", "9.6", "1.69"
预期结果:
“Aa”, “2.07", “2.35”, “39.00", “82.20”, “8.8", “3.80”,
“B”, “2.26”, “2.25", “40.00”, “80.80", “8.1”, “1.86",
“DEt”, “2.07", “2.22”, “41.00", “83.80”, “8.8", “3.87”,
“F”, “2.05”, “2.15", “43.00”, “82.20", “8.4”, “3.11"
"Bc", "2.08", "2.12", "48.00", "82.60", "8.3", "2.47",
"GfHI", "2.08", "2.10", "46.00", "82.20", "8.1", "2.90",
"JK", "1.95", "2.08", "38.00", "83.40", "8.7", "1.63",
"LM", "1.89", "2.07", "45.00", "83.80", "9.0", "1.84",
"N", "2.06", "2.05", "41.00", "80.60", "9.0", "4.09",
"OP", "1.86", "2.04", "48.00", "81.60", "8.6", "2.60",
"QstR", "1.95", "2.03", "44.00", "82.80", "8.8", "1.40",
"S", "2.03", "2.02", "40.00", "81.40", "8.2", "1.74",
"T", "1.95", "2.01", "43.00", "81.80", "9.0", "2.30",
"Unh", "1.96", "2.00", "44.00", "82.60", "9.2", "2.40",
"VWC", "1.98", "1.97", "40.00", "82.00", "8.1", "1.15",
"Yu", "1.90", "1.96", "41.00", "82.80", "9.6", "2.08",
"Zabi", "1.90", "1.95", "42.00", "84.20", "9.6", "1.69"
【问题讨论】:
标签: regex