c# - 特殊字符的正则表达式?

标签 c# regex

string Val = Regex.Replace(TextBox1.Text, @"[^a-z, A-z, 0-9]", string.Empty);

此表达式不匹配字符 ^_。我应该怎么做才能匹配这些值?

还有一点是,如果 TextBox1.Text 字符串值大于 10,则最后一个字符串值(第 11 个字符串值)应该匹配。

最佳答案

请注意,当括在方括号中时,^ 具有特殊含义。这意味着匹配除了字符类中指定的所有内容,基本上是 '[]'

如果要匹配"^""_",将插入符(^)放在开后的其他位置括号像这样,使用重复来限制字符长度:

[\W_]

这将确保整个字符串中的字符为 10。

或者您使用斜杠 "\^" 对其进行转义。

string Val = Regex.Replace(TextBox1.Text, @"[\W_]", string.Empty);

关于c# - 特殊字符的正则表达式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15186407/

相关文章:

javascript - 如何拆分为字符组?

java - 匹配数字后跟下划线和数字的正则表达式?

java正则表达式匹配由4个空格包围的单词

c# - 扩展方法覆盖

c# - 是什么 ?[]? C#中的语法?

javascript - 获取文件夹中最新添加的文件并将其显示在 html 页面上?

regex - 为什么人们使用正则表达式进行电子邮件和其他复杂的验证?

c# - 在通过箭头键导航时禁用 WPF 下拉组合的 onSelectedIndexchanged 事件

c# - 如何在运行时修改xaml资源?

regex - 如何在swift中通过正则表达式过滤字典键