正则表达式匹配逻辑与特殊字符

本文关键字:特殊字符 正则表达式 | 更新日期: 2023-09-27 18:06:36

我知道这个语句应该像预期的那样返回false

Regex.IsMatch("+", @"[a-zA-Z0-9]")

但为什么这些语句匹配,尽管他们不应该(从我的理解)

Regex.IsMatch("C++", @"[a-zA-Z0-9]")
Regex.IsMatch("C++", @"[a-zA-Z0-9]+")

正则表达式匹配逻辑与特殊字符

这些是匹配,因为你不匹配整个字符串。它们将匹配C++中的C

使用^$来匹配字符串的开头和结尾:

bool onlyAlphaNumeric = Regex.IsMatch("C++", @"^[a-zA-Z0-9]+$"); // will be false