gpt4 book ai didi

.net - 检查字符数的正则表达式

转载 作者:行者123 更新时间:2023-12-05 00:40:49 24 4
gpt4 key购买 nike

我必须编写一个 .NET 正则表达式来验证字符串是否为字母数字并且具有 4 或 8 个字符(仅此而已)。我怎样才能做到这一点?我试过 ([a-zA-Z0-9]{4})|([a-zA-Z0-9]{8}) 但它不起作用。

最佳答案

您需要包含行尾 anchor ,否则它可以匹配字符串的一部分:

^([a-zA-Z0-9]{4}|[a-zA-Z0-9]{8})$

以下是如何使用此正则表达式的快速示例:
Regex regex = new Regex("^([a-zA-Z0-9]{4}|[a-zA-Z0-9]{8})$");
string[] tests = { "abcd", "0123", "01234567", "012345", "0123456789" };
foreach (string test in tests)
{
Console.WriteLine("{0}: {1}", test.PadRight(10), regex.IsMatch(test));
}

结果:
abcd      : True0123      : True01234567  : True012345    : False0123456789: False

An alternative way to write the regular expression is as follows:

^(?:[a-zA-Z0-9]{4}){1,2}$

关于.net - 检查字符数的正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3453974/

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