我在表单中有一个名为Comment
的文本框。在用户输入他们的评论并单击保存按钮后,我想在此评论字符串中搜索任何无效字符,例如句号,逗号,括号等。
如果字符串包含任何这些字符,那么我想抛出异常。
我知道在javascript中您可以使用RegularExpressionValidator
并使用ValidationExpression="^[a-zA-Z0-9]*$"
检查验证但是如何在后面的代码中执行此操作?
现在我只是检查评论是否为空,但如何检查评论是否包含数字和字母以外的其他内容?
if (string.IsNullOrEmpty(txtComment.Text))
{
throw new Exception("You must enter a comment");
}
答案 0 :(得分:3)
使用Regex
Regex regex = new Regex(@"^[a-zA-Z0-9]*$");
Match match = regex.Match(txtComment.Text);
if (!match.Success)
{
throw new Exception("You must enter a valid comment");
}
答案 1 :(得分:1)
// Basic Regex pattern that only allows numbers,
// lower & upper alpha, underscore and space
static public string pattern = "[^0-9a-zA-Z_ ]";
static public string Sanitize(string input, string pattern, string replace)
{
if (input == null)
{
return null;
}
else
{
//Create a regular expression object
Regex rx;
rx = new Regex(pattern);
// Use the replace function of Regex to sanitize the input string.
// Replace our matches with the replacement string, as the matching
// characters will be the ones we don't want in the input string.
return rx.Replace(input, replace);
}
}