我想使用正则表达式来输入用户名和密码。它们应该只包含:
ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890@-.#_
我是怎么做到的?
答案 0 :(得分:5)
/[A-Za-z0-9@\'\-.#_]+/
。
要打破它:
[...]
内的部分是您要匹配的字符。A-Z
是一个字符范围,用 - 分隔两端。\-
是文字破折号。+
表示一个或多个。根据您的匹配方式,您可能希望在末尾使用^
和$
,以确保它与整个输入相匹配(或Java& ^
和\Z
; Perl5)。
答案 1 :(得分:1)
要仅允许任何字符串中提到的字符,您可以使用正则表达式:
^[a-zA-Z0-9@'\-.#_]+$
答案 2 :(得分:0)
在Perl ::
中$text =~ m/[a-z0-9@\'\-.#_]+/ig ;