我在asp.net工作。我正在使用Regular Expression Validator
请你帮我创建一个正则表达式,不允许逗号以外的特殊字符。逗号必须被允许。
我检查了regexlib,但我找不到匹配。我对^(a-z|A-Z|0-9)*[^#$%^&*()']*$
感到愤怒。当我将其他字符添加为无效时,它不起作用。
还有,请你建议我找一个正常表达的好资源吗? regexlib似乎很大;但列出非常有限但最常用的例子的任何其他地方?
另外,我可以使用C#代码创建表达式吗?有什么文章吗?
答案 0 :(得分:3)
[\ d \ W \ S,] *
只是一个猜测
答案 1 :(得分:3)
[\w\s,]+
工作正常,你可以看到吼叫。
RegExr是一个用实时结果测试正则表达式的好地方,它还附带了一个非常完整的常用表达式列表。
[]
字符类\w
匹配任何单词字符(字母数字和下划线)。 \s
匹配任何空白字符(空格,制表符,换行符)。 ,
包括逗号+
是贪婪的匹配;这将与之前的1次或更多次匹配。
答案 2 :(得分:1)
要回答任何文章,我从这里开始,发现它是一个很好的资源:
http://www.regular-expressions.info/
对于您当前的问题,请尝试以下方法:
[\w\s,]*
以下是细分:
答案 3 :(得分:0)
对于不是逗号的单个字符,[^,]应该可以正常工作。
答案 4 :(得分:0)
你可以试试[\ w \ s,]正则表达式。此正则表达式将仅匹配字母数字字符和逗号。如果文本中出现任何其他字符,那么这将不匹配。
关于正则表达式资源的第二个问题,您可以转到
http://www.regular-expressions.info/
这个网站有很多关于正则表达式的教程,还有很多有用的信息。
另外,我可以使用创建表达式吗? C#代码?有什么文章吗?
通过这个,你的意思是说你想知道正则表达式执行的类和方法是什么?或者您想要为您创建正则表达式的工具?
答案 5 :(得分:0)
你可以使用C#创建表达式,这样的技巧通常就是这样:
Regex regex = new Regex(@"^[a-z | 0-9 | /,]*$", RegexOptions.IgnoreCase);
System.Console.Write("Enter Text");
String s = System.Console.ReadLine();
Match match = regex.Match(s);
if (match.Success == true)
{
System.Console.WriteLine("True");
}
else
{
System.Console.WriteLine("False");
}
System.Console.ReadLine();
您需要导入System.Text.RegularExpressions; 上面的正则表达式只接受数字,字母(大写和小写)和逗号。
对于正则表达式的一个小介绍,我认为MCTS 70-536的书可以提供很大帮助,我很确定你可以从某个地方下载它或获得副本。
我假设您从未在C#中使用正则表达式,因此我提供了上面的代码。
希望这有帮助。
答案 6 :(得分:0)
谢谢你,所有..
[\ w \ s,] *工作
让我通过regular-expressions.info,如果我需要进一步的支持,请回来。
让我尝试使用C#代码方法,如果需要进一步支持,请回来。
[这个论坛太棒了。质量回复所以qucik ..]
再次感谢
答案 7 :(得分:0)
(…)
表示分组,而不是用[…]
表示的字符集。所以试试这个:
^[a-zA-Z0-9,]*$
这将只允许使用字母数字字符和逗号。