查找所有长度模式的正则表达式函数?

Regex function that finds patterns of all lengths?

如何制作一个正则表达式来匹配单个字符作为一个组以及重复序列?

这是我找到的(不是我自己做的):https://regex101.com/r/Vdhjld/1

正则表达式是

((?P<X>\S.*?)(?:, (?P=X))+)

字符串是

1, 2, 3, 1, 2, 3, 1, 2, 3, 2, 5, 2, 5, 1

我希望它能够得到字符串末尾的单个Group 'X'。现在它只是 returns 1, 2, 3, 1, 2, 3, 1, 2, 32, 5, 2, 5 作为完全匹配,但我希望它与 return 和 1 一样完全匹配。我该怎么做?

您可以使用 alternation 来匹配您的原始模式或使用否定字符 class [^\s[\]] 来匹配除空白字符之外的任何字符,[] 或逗号

((?P<X>\S.*?)(?:, (?P=X))+|[^\s,[\]])

Regex demo