我的自定义网址的正则表达式

时间:2017-11-14 06:02:46

标签: c# regex url routes

美好的一天,

我无法为我的网址创建正确的正则表达式:

any-any.test.test2.com或ALL CAPS

http://any-any.test.test2.com或全部大写

https://any-any.test.test2.com或全部大写

有人可以帮助我如何制作一个可以接受这个网址的正则表达式。
有用的链接: https://regex101.com/

注意:任何意味着用户都可以输入任何字符,之后任何字符应该有“ - ”,那么所有字符必须包含:
.test.test2.com或
.TEST.TEST2.COM
最后。

3 个答案:

答案 0 :(得分:1)

尝试这种模式:

var pattern = "(?i)(https?://)?.+-.+(.test.test2.com)"

用法:

var test1 = "any-any.test.test2.com";
var test2 = "ANY-ANY.TEST.TEST2.COM";
var test3 = "http://any-any.test.test2.com";
var test4 = "https://any-any.test.test2.com";

var result1 = Regex.Match(test1, pattern);
var result2 = Regex.Match(test2, pattern);
var result3 = Regex.Match(test3, pattern);
var result4 = Regex.Match(test4, pattern);

Console.WriteLine(result1);
Console.WriteLine(result2);
Console.WriteLine(result3);
Console.WriteLine(result4);

输出:

any-any.test.test2.com
ANY-ANY.TEST.TEST2.COM
http://any-any.test.test2.com
https://any-any.test.test2.com

答案 1 :(得分:0)

试试这个:

(HTTP(S)://)?。+ - + test.test2.com

有一个有用的开源工具: https://sourceforge.net/projects/regulator/

df.assign(New=df.System.str.rsplit('/', 2).str[-2])

    System  mem New
0  /vol/a/   10   a
1  /vol/b/   20   b
2  /vol/c/   30   c
3  /vol/d/   40   d

答案 2 :(得分:0)

vim中的一个简单的正则表达式模式 ...-.... test.test2.com \ C

这将匹配 “any-any.test.test2.com”; “ANY-ANY.TEST.TEST2.COM”