非常简单..我是正则表达式的新手,并且想知道如何执行这样的事情?最初我去了:
if (Regex.IsMatch(par, "^[0-9a-zA-Z]+$"))
但它似乎没有用......我正在寻找一些特别排除反斜杠,逗号和插入符号的东西。
我也在寻找另一个表达式来专门检查字符串中是否存在美元符号($),逗号(,)或句点(。)
答案 0 :(得分:4)
你似乎在寻找
@"^[^,\\^]*$"
请参阅regex demo
<强>详情:
^
- 字符串开头[^,\\^]*
- 除,
,\
和^
$
- 字符串结束。请注意[^...]
定义了negated character class,它匹配任何字符,但是匹配类中指定的字符。请注意,括号内的第二个^
被视为文字插入符号(而第一个是否定字符类构造的一部分)。
如果您不允许空字符串,请将*
(零次或多次出现)替换为+
(一次或多次出现)。
要进一步创建这样的正则表达式,只需将字符放入否定的字符类中,记住]
,\
,^
和-
更好地转义以避免混淆。 $
,*
,(
,)
,+
,|
,{
,?
,{ {1}}失去了它们的特殊含义,并表示文字符号。