c# - C# 中的 RegEx 无法正常工作

标签 c# asp.net regex

我有一个问题。

我希望允许用户在瑞典语键盘上编写您可以看到的所有内容(而不是使用字符映射或类似内容)。这意味着所有英文字母数字字符和 åäö。允许的非字母数字字符是 §½!"@#£¤$%&{/()[]=}?+\´`^ 等等。

我的表达是:

[\wåäö§½!"@#£¤$%&/{()=}?\\\[\]+´`^¨~'*,;.:\-_<>|]

在 C# 中它看起来像这样:

Regex allowedChars = new Regex("@[\\wåäö§½!\"@#£¤$%&/{()=}?\\\\[\\]+´`^¨~'*,;.:\\-_<>|]");

我检查它:

if (allowedChars.IsMatch(mTextBoxUserName.Text.Trim()))

问题是,如果我写了一个错误的字符和一个允许的字符,if 语句认为它是匹配的。我希望它匹配整个单词。我尝试在表达式末尾添加一个“+”,但它从未匹配...

有什么想法吗?

最佳答案

您应该锚定正则表达式 ^[...]+$

关于c# - C# 中的 RegEx 无法正常工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8564844/

相关文章:

c# - 在 ASP.NET Core 中有效地转发来自内部 HttpClient 调用的内容

c# - 无法使用内容同步操作 (syncrepl) 从 OpenLDAP 服务器获取已删除的项目

c# - 访问 WP7 联系人

c# - 如何在 ASP.NET MVC 上获取 session IsPersistent?

c# - 用于 C# asp.net 的分析/性能分析的免费或廉价选项?

php - 从 PHP 中的字符串中删除控制字符

java - 如何使用java模式匹配器解析 'P'之后的所有内容?

c# - 获取 Windows 服务的完整路径

c# - 缓存 Linq 查询问题

javascript - 正则表达式设置单元测试文件路径