我想有一个正则表达式来检查一个字符串是否只包含大写和小写字母、数字和下划线。
嗯...问题。 它是否需要至少有一个字符或没有? 它可以是一个空字符串吗?
^[A-Za-z0-9_]+$
将至少有一个大写或小写字母数字或下划线。 如果它可以是零长度,那么只需将+替换为*即可。
^[A-Za-z0-9_]*$
编辑。
如果需要包括变音符(如cedilla - ç),那么你需要使用字符,其作用与上述相同,但包括变音符。
^\w+$
或者
^\w*$
以下是匹配字母数字字符和下划线的铰链。
^[a-zA-Z0-9_]+$
例如,在Perl中。
#!/usr/bin/perl -w
my $arg1 = $ARGV[0];
# check that the string contains *only* one or more alphanumeric chars or underscores
if ($arg1 !~ /^[a-zA-Z0-9_]+$/) {
print "Failed.\n";
} else {
print "Success.\n";
}