C# 正则表达式只允许字母数字

标签 c# regex

我有以下正则表达式 ^[a-zA-Z0-9]+$ 允许字母数字字符。这里的问题是,如果我只输入数字字符,如“897687”,那么正则表达式仍然匹配。我不希望发生这种情况。应该至少有一个文本字符,并且应该以文本字符开头。例如像“a343”或“a98bder”或“a4544fgf343”

如果你能帮助我为此改进我的正则表达式,那就太好了。

最佳答案

听起来像你想要的:

^[a-zA-Z][a-zA-Z0-9]*$

解释

^ 断言行首的位置

匹配 [a-zA-Z] 下面列表中的单个字符

» a-z a(索引 97)和 z(索引 122)之间范围内的单个字符(区分大小写)

» A-Z 介于 A(索引 65)和 Z(索引 90)之间的单个字符(区分大小写)

匹配[a-zA-Z0-9]下方列表中的单个字符*

* Quantifier — 在零次和无限次之间匹配,尽可能多的次数,按需回馈(贪心)

a-z 介于 a(索引 97)和 z(索引 122)之间的单个字符(区分大小写)

A-Z 介于 A(索引 65)和 Z(索引 90)之间的单个字符(区分大小写)

0-9 0(索引 48)和 9(索引 57)之间的单个字符(区分大小写)

$ 断言行尾的位置

Demo

关于C# 正则表达式只允许字母数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8133669/

相关文章:

java - 正确的正则表达式模式是什么?

javascript - 我的 JavaScript 似乎无法运行

c# - 如果转换为对象类,则知道原始类

c# - 数字解析怪异

使用 mkbundle 构建的 C# 应用程序不起作用

python - 在 python 中创建基于关键字的搜索

当前面没有字符串时,正则表达式匹配字符

c# - Colspan 未按预期工作,仅跨越一列

c# - 使用属性名称调用属性或方法

javascript - 如何使用正则表达式或javascript验证文件夹路径?