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

Java 如何创建只接受字母数字字符的正则表达式?,java,regex,Java,Regex,可能重复: 如何创建只接受字母数字字符的正则表达式 谢谢。试试下面的字母数字正则表达式 "^[a-zA-Z0-9]*$" ^-字符串的开头 [a-zA-Z0-9]*-包括多个字符 $-字符串结尾 请参阅更多信息:请参阅 例如[A-Za-z0-9]使用此^[A-Za-z0-9\]*$ 有关更多信息,请参阅。仅允许使用ASCII字符还是允许使用其他字符 ^\w*$ 将(Java)限制为ASCII字母/数字和下划线 ^[\pL\pN\p{Pc}]*$ 还允许使用国际字符/数字和“连接标点符号”

可能重复:

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


谢谢。

试试下面的字母数字正则表达式

"^[a-zA-Z0-9]*$"
^-字符串的开头

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

$-字符串结尾

请参阅更多信息:

请参阅


例如[A-Za-z0-9]

使用此
^[A-Za-z0-9\]*$


有关更多信息,请参阅。

仅允许使用ASCII字符还是允许使用其他字符

^\w*$
将(Java)限制为ASCII字母/数字和下划线

^[\pL\pN\p{Pc}]*$
还允许使用国际字符/数字和“连接标点符号”。

请尝试使用\w


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

String target = new String("A" + "\u00ea" + "\u00f1" +
                             "\u00fc" + "C");
如果还希望匹配unicode字符:

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

^[a-zA-Z0-9_+-]*$
如果您需要它,那么它必须是最后一件事,因为这经常被忽略。注意:重要的是说\w接受下划线。是的,这是我在回答中写的。这很旧,但正如人们所知,它也匹配下划线这也会匹配空字符串,这在大多数情况下可能并不可取。要解决这个问题,只需将后面的
*
替换为
+
,因此基本上是
^[a-zA-Z0-9]+$
,以避免空字符串产生误报。你也可以在