regex 两个可能的有效字符串的逗号分隔列表的正则表达式

wlsrxk51  于 2023-06-25  发布在  其他
关注(0)|答案(2)|浏览(106)

我希望创建一个正则表达式,它可以匹配xxxyyy,或者任何由逗号分隔的组合。
所以这些都是有效的:

xxx
yyy
xxx,xxx
yyy,xxx
xxx,yyy,yyy,yyy

但这些都是无效的:

xx // must be exact xxx
yyyy // must be exact yyy
xxx, // trailing comma
xxxyyy // no delimiter
xxx,,yyy // should only have one comma between
,xxx,yyy // no prepending commas
c7rzv4ha

c7rzv4ha1#

这应该足够^((?:xxx|yyy)(,(?:xxx|yyy))*)$https://regex101.com/r/gT8wK5/1327

wa7juj8i

wa7juj8i2#

您可以像这样使用 negative lookahead

^((xxx|yyy)(,(?!$)|$))+$

See it on regex101
Eraklon's answer相比,这个正则表达式不会重复(xxx|yyy)部分两次,但它的性能稍差。

相关问题