目前,我正在使用[012356789]
,但还有其他方法可以实现“没有4的所有数字”吗?
答案 0 :(得分:6)
你可以试试这个正则表达式:
[0-35-9]
答案 1 :(得分:4)
要确保该字符串仅包含数字4
以外的数字,您可以使用:^[0-35-9]+$
。 ^
表示字符串的开头,[0-35-9]
表示不包括数字4
的任何数字,+
表示一个或多个,$
结尾字符串。
答案 2 :(得分:2)
对于这种简单的情况,对方建议绰绰有余。对于更复杂的情况,您可以使用以下内容:
(?!4)[0-9]
当您使用字符类并且想要排除单个字母时,这会很好。 (例如,x
以外的任何字母)。这意味着:not followed by 4, any digit 0-9
正如@stema所指出的,从长远来看,这将使正则表达式更“复杂”。如果你想添加一个量词,你有两个“正则表达式元素”而不是一个,所以你需要:
(?:(?!4)[0-9])
(?:
表示该组不是捕获组)
答案 3 :(得分:2)