我有一个字符池,我想使用正则表达式来匹配这些字符或这些字符的子集的字谜词。
示例:给定字符串“ACNE”,正则表达式应该给出以下结果:
- 痤疮 [T]
- 塞纳 [T]
- 不能]
- 卡安 [F]
- 卡南 [F]
我已经尝试过这个解决方案/b[acne]{1,4}/b
但它接受单个字符的多次重复。
我该怎么做才能最多获取每个字符一次?
“痤疮”这个词的子字谜词是
- 仅由字母组成
acne
- 不包含
a
不止一次
- 不包含
c
不止一次
- 不包含
n
不止一次
- 不包含
e
不止一次
将其编译成正则表达式:
^(?!.*a.*a)(?!.*c.*c)(?!.*n.*n)(?!.*e.*e)[acne]*$
Test:
或者,由于“acne”不包含任何字母超过一次,因此单词“acne”的子字谜是以下单词:
将其编译成正则表达式:
^(?!.*(.).*\1)[acne]*$
Test:
注意:单词“magmoid”的子字谜可以匹配为
^(?!.*([agoid]).*\1)(?!(.*m){3})[magoid]*$
(不包含任何agoid
超过一次,并且不包含m
超过两次)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)