URL

2017-09-14 29 views
-2

的正则表达式提取例如,我有:URL

String a = abcd http//google.com abcd 

String b=efgh http//yahoomail.hey.com ihklm 

我怎么能只提取的话:

google 
yahoomail.hey 
TIA 
+2

选中此https:// stackoverflow。 com/a/3325796/1849024 – imsome1

回答

1

试试这个

 string pattern = @"//[a-zA-Z0-9]{1,}[.][a-zA-z]{2,4}"; 
     string input = @"http//yahoomail.hey.com ihklm"; 

     foreach (Match m in Regex.Matches(input, pattern)) 
     { 
      Console.WriteLine("'{0}'", m.Value.ToString().Replace("/","")); 
     } 

阐释:

//匹配需要开始与 “//”

[A-ZA-Z0-9] {1,}下一个可存在于[]指定的字符的任何量的1到n次

[。]然后需要有一个。

[A-ZA-Z] {2,4}的结构域可以是任何上限/下档字符,有需要为至少2但最多4个字符

检查你的正则表达式,我建议使用https://regex101.com/
使用PHP风格的标准设置。完成创建正则表达式之后,可以使用左侧的“代码生成器”将其转换为JScript/php/python/c#/ java/ruby​​/rust/perl/golang

+0

为什么如果我试图搜索这个\t 它不返回任何东西。 ://和.prod只有 – DarknessNight

+0

因为“ho-awedead.dead.prod”不以“http://” – Jack

+0

@Est开头,这是[mcve]的用途!每个案例都应该在您的测试输入中 –