繁体   English   中英

将域名与正则表达式匹配

[英]Match domain names as regular expressions

有人可以告诉我怎样才能编写正则表达式匹配abc.com.ae或abc.net.af或其他任何东西,ae是字符串中的最后一个是可选的

这是成功的,但没有。 不知道为什么

^[a-z]{1,25}.[a-z]{3}$

回答

^[a-z]{1,30}\.[a-z]{3}((\.)[a-z]{2})?$

答案是:写\\. 而不是. 因为. 意思是“任何角色”。

您可以使用\\ u转义码匹配特定字符,然后紧跟十六进制格式的该字符的unicode编号,它也必须只有四位数字。 我认为一个句号就是\\ u002E。

在你的'/'工作但不是'。'的例子中,这是因为'/'被识别为普通字符并且不需要被转义,而句号在c#regex中具有不同的含义(它匹配任何字符) )。

如果youre仍然不知道,这里是一个有用的指导在C#中的正则表达式: http://www.radsoftware.com.au/articles/regexlearnsyntax.aspx而这其中有正则表达式的URL的例子: HTTP://www.radsoftware .com.au /用品/ regexsyntaxadvanced.aspx

我听起来你需要一些环境来学习正则表达式。

学习正则表达式的最佳方法是使用交互式正则表达式模拟器:在表达式中键入,它会立即为您提供结果。

有一些免费(而不是免费)的正则表达式模拟器可用:

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM