gpt4 book ai didi

用于计算机名称验证的 RegEx(长度不能超过 15 个字符、完全为数字或包含以下字符...)

转载 作者:行者123 更新时间:2023-12-02 09:21:37 25 4
gpt4 key购买 nike

我有这些要求要遵循:

Windows computer name cannot be more than 15 characters long, be entirely numeric, or contain the following characters: ` ~ ! @ # $ % ^ & * ( ) = + _ [ ] { } \ | ; : . ' " , < > / ?.



我想创建一个 RegEx 来验证给定的计算机名称。

我可以看到唯一允许的字符是 -到目前为止我有这个:
/^[a-zA-Z0-9-]{1,15}$/
除了“ 不完全是数字 ”部分之外,它几乎匹配所有约束。

如何将最后一个约束添加到我的 RegEx?

最佳答案

您可以使用负前瞻:

^(?![0-9]{1,15}$)[a-zA-Z0-9-]{1,15}$

或者简单地使用两个正则表达式:
^[a-zA-Z0-9-]{1,15}$
AND NOT
^[0-9]{1,15}$;

这是一个活生生的例子:

var regex1 = /^(?![0-9]{1,15}$)[a-zA-Z0-9-]{1,15}$/;
var regex2 = /^[a-zA-Z0-9-]{1,15}$/;
var regex3 = /^[0-9]{1,15}$/;

var text1 = "lklndlsdsvlk323";
var text2 = "4214124";

console.log(text1 + ":", !!text1.match(regex1));
console.log(text1 + ":", text1.match(regex2) && !text1.match(regex3));
console.log(text2 + ":", !!text2.match(regex1));
console.log(text2 + ":", text2.match(regex2) && !text2.match(regex3));

关于用于计算机名称验证的 RegEx(长度不能超过 15 个字符、完全为数字或包含以下字符...),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42205107/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com