在逗号前查找每个变量

Find each variable before comma

我正在 emacs 中使用 QMK 布局,我想 query-replace-regexp 每个变量之前并包括带有 XXXXXXX,.

的逗号

我有:

MO(RST), KC_1,    KC_2,    KC_3,    KC_4,    KC_5,                      KC_6,    KC_7,    KC_8,    KC_9,    KC_0,    RESET, \

并希望以:

结束
XXXXXXX, XXXXXXX,    XXXXXXX,    XXXXXXX,    XXXXXXX,    XXXXXXX,                      XXXXXXX,    XXXXXXX,    XXXXXXX,    XXXXXXX,    XXXXXXX,    XXXXXXX, \

我试过输入 .+, 但它突出显示了最后一个逗号之前的所有内容。

我想在每个逗号处停止,忽略白色 space。意思是首先 MO(RST),,然后 KC_1,,等等。在匹配中包含逗号不是必需的。

作为奖励,最好在 7 个字符内替换白色space 宽度以以下间距结束:

XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,                   XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, \

您可以在正则表达式模式下尝试以下查找和替换:

Find:    \S+,
Replace: XXXXXXX,

Demo

我真的很喜欢 ,但我不能将其标记为解决方案,因为它在 emacs 中不起作用。我一直在做的是:

Find: [A-Z_].......
Replace: XXXXXXX,

查找,从字母数字字符开始,或 _,总共 8 个字符 并将这 8 个字符替换为 XXXXXXX,.

________ 一样,它使用下层的键码。 8个 字符总数:从逗号开始,或者如果键码更少 超过7个字符,后面的空格保持对齐。

这就满足了加分条件。