“(” 和“)” 在 C# 中替换
本文关键字:替换 | 更新日期: 2023-09-27 18:35:12
所以我正在尝试从与表中的SQL列相关的用户输入中替换下面的字符。
例:用户创建一个名为 My(first)try 的字段。在SQL中,这被称为Myfirsttry。
我目前正在编写代码以用我们的替换用户输入,但我被卡住了。
到目前为止,我有这个。
itemreplace = itemreplace.Replace("(", "");
然而,这并不能解决问题。想法、评论、建议?
我觉得现实世界的情况更复杂,你并没有指出这一点,但是为了处理你的示例文本My(first)try
你可以链接Replace
语句:
itemreplace = itemreplace.Replace("(", "").Replace(")", "");
但是,似乎现实世界的情况更像是利用这样的正则表达式:
^[a-zA-Z0-9_@#][a-zA-Z0-9@$#_]*$
这是一个正则表达式 101 可以证明这一点。
然后使用它可能如下所示:
var valid = Regex.IsMatch("My(first)try", pattern);
我确实参考了这篇文章,T-SQL 列名中允许使用哪些特殊字符?,以确定列名允许的字符。
第一个选项:
String itemreplace = new String("My(first)try");
String charsToRemove = new String[] {"(", ")"};
foreach (char c in charsToRemove)
{
itemreplace = itemreplace.Replace(c, string.Empty);
}
第二种选择:
itemreplace = itemreplace.Replace("(", string.Empty).Replace(")", string.Empty);