想要通过任何字母数字和下划线,短划线和句点

时间:2009-12-21 15:04:31

标签: c# asp.net-mvc regex routes

在我的控制器中,我当前设置了一个具有以下正则表达式的约束:

 @"\w+"

我还想允许下划线,破折号和句号。

更有效,因为这被称为分配。

任何提示?

7 个答案:

答案 0 :(得分:2)

试试这个:

@"[._-\w]+"

答案 1 :(得分:1)

(?:\w|[-_.])+

将匹配一个或多个单词字符或连字符,下划线或句点。它们捆绑在一个非捕获组中。

答案 2 :(得分:0)

以下是否有帮助? @ “[\ W _-。] +”

P.S。我使用Rad Software Regular Expression Designer来设计复杂的Regex。

答案 3 :(得分:0)

@ “[\ W _-。] +”

我没有正则表达式大师只是一个猜测,所以验证它的工作原理......

答案 4 :(得分:0)

我使用@"[\w\-._]+"作为正则表达式,因为破折号可能被解释为范围分隔符。使用\ w是没有危险的,但是如果你稍后添加说@,那么冲刺已经逃脱更安全。

有一些建议已经在页面上_-.,我相信这将被解释为“单词字符”或“_”到“。”之类的任何内容。在一个范围内。

答案 5 :(得分:0)

包含所有内容的模式:[_.-\w]+

您可以使用_\. -?添加后缀,以使任何字符可选(无或更多),例如对于下划线:

[_?\.-\w]+

但请参阅Skurmedel的模式以使其全部可选。

答案 6 :(得分:0)

我想我们真的不想在此处的表达式中添加G1,它已经是_构造的一部分,该构造将考虑上,下,数字和下划线{{ 1}}和

\w

就可以了。

如果您愿意,我们还可以添加开始和结束锚点:

[A-Za-z0-9_]

测试

[\w.-]+

C# Demo


如果您希望简化/修改/探索表达式,请在regex101.com的右上角进行说明。如果愿意,您还可以在this link中查看它如何与某些示例输入匹配。


RegEx电路

jex.im可视化正则表达式:

enter image description here