regex - 需要 Flex Regex 验证表达式作为密码,仅允许字母数字值并且需要一个数字

标签 regex apache-flex actionscript flex4

您好,我正在尝试设置一个 RegexpValidator,它只接受长度在 6-30 个字符之间的一串字母数字字符,并且需要一个数字。我是正则表达式新手,我尝试过的所有操作似乎都不断返回无效的 ValidationRsultEvent。这是一段代码:

<mx:RegExpValidator id="regexValidator" source="{passwordInput}" property="text"
                        triggerEvent="" valid="onPasswordValidate(event)" invalid="onPasswordValidate(event)" />

private function validateRegister():void
{
  regexValidator.expression = "^(?=.*(\d|\W)).{6,30}$";
  regexValidator.validate();
}

最佳答案

我不确定什么会导致验证错误,但就您的正则表达式而言,要将字母数字字符串与至少一个数字匹配,请尝试 ^(?=.*\d)\w{ 6,30}$

^         # Match begining of string
(?=.*\d)  # Lookahead, assert there is any number of characters followed by a digit
\w{6,30}  # \w matches letters, digits and the underscore character, 6-30 of them
$         # Match End of string

如果您只想匹配字母和数字,可以使用 [0-9a-zA-Z] 而不是 \w

您当前的正则表达式 ^(?=.*(\d|\W)).{6,30}$ 匹配至少包含一个除 之外的字符的任何字符串[a-zA-Z_](\d|\W 匹配数字或“非单词”字符),长度在 6 到 30 个字符之间,不一定满足您指定的要求。

关于regex - 需要 Flex Regex 验证表达式作为密码,仅允许字母数字值并且需要一个数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2665547/

相关文章:

javascript - 如何使用正则表达式查找对象成员名称

apache-flex - ActionScript 对象的深度通用序列化

apache-flex - 创建 native 安装程序桌面应用程序时如何将 Adob​​e Air 包含在包中

php - 哪个更快?空语句或返回

python - Python 中的负 RegEx 模式匹配等同于 Perl(!~ operator)

java - 如何保持指定的 HTML 标签

php - 使用正则表达式从文本区域发布结果中删除行

java - 我正在从 USPS 获取串联地址行..我想以某种方式打破它

actionscript - 有免费的 Adob​​e AIR 3.4 SDK 吗

javascript - TCP 套接字、JSON 和安全性