我当前的正则表达式是 / [^ 0-9] / ,它不允许使用数字。但问题是它接受像()这样的其他字符,并且它接受带有数字的字母。请帮助。
感谢。
答案 0 :(得分:2)
制定您的规则/要求。如果您只想允许使用字母 - 请尝试
@"^[a-zA-Z]+$"
提示 - 应用集合论。如果所有字符都属于通用集。一切都是允许的。之后您应用规则:如果您不允许数字,则表示允许除数字之外的所有内容。
答案 1 :(得分:1)
您正在从错误的方向接近问题。
怎么样:
[a-zA-Z \-]+
答案 2 :(得分:1)
[-a-zA-Z ]+
在任何一种情况或空格中使用短划线或字母'a'到'z'。
或者,为了获得更好的国际支持,请考虑是否有可以使用的命名字符类。在POSIX系统上,您可以写:
grep -E '^[-[:alpha:] ]+$'
例如,,这将获取重音字符。可能有一个类似的符号(可能不是那个符号)。
答案 3 :(得分:0)
对于您的问题,您可以使用此正则表达式
[^()\d]
它不允许使用数字和括号()。即使是中间的数字也不会出现