如何创建一个仅接受字母数字字符的正则表达式?

时间:2011-05-13 06:47:12

标签: java regex

  

可能重复:
  Regular Expression for alphanumeric and underscores

如何创建仅接受字母数字字符的正则表达式?

感谢。

6 个答案:

答案 0 :(得分:91)

尝试以下字母数字正则表达式

"^[a-zA-Z0-9]*$"

^ - 字符串开头

[a-zA-Z0-9] * - 包含多个字符

$ - 字符串结尾

查看更多:http://docs.oracle.com/javase/7/docs/api/java/util/regex/Pattern.html

答案 1 :(得分:22)

[a-zA-Z0-9]只匹配ASCII字符,不匹配

String target = new String("A" + "\u00ea" + "\u00f1" +
                             "\u00fc" + "C");

如果您还想匹配unicode字符:

String pat = "^[\\p{L}0-9]*$";

答案 2 :(得分:17)

只允许使用ASCII或其他字符吗?

^\w*$

将(在Java中)限制为ASCII字母/数字和下划线,

^[\pL\pN\p{Pc}]*$

还允许国际字符/数字和“连接标点符号”。

答案 3 :(得分:3)

使用此^[a-zA-Z0-9_]*$

有关详细信息,请参阅here

答案 4 :(得分:3)

答案 5 :(得分:2)