如何查找子串到特定字符

时间:2013-07-10 13:48:14

标签: c# substring

如何找到特定字符的子字符串?我想要的是找到类似于:

的子串
172.20.9.93\randDir

如果“\”存在,我想要IPAddress,或者换句话说,直到“\”的所有内容。 有没有办法用substring做这个或者有更好的方法吗?

2 个答案:

答案 0 :(得分:6)

  

如果“\”存在,我想要IPAddress或其他方面的所有内容,直到“\”。

两个选项:

  • 使用\查找第一个IndexOf的索引,然后使用Substring

    int firstSlash = text.IndexOf('\\');
    string ipAddress = firstSlash == -1 ? text : text.Substring(0, firstSlash);
    
  • 使用\String.Split拆分,然后执行第一部分

    string ipAddress = text.Split('\\')[0];
    

答案 1 :(得分:0)

尝试使用正则表达式匹配:

var input = @"172.20.9.93\rand";
var output = Regex.Match(input, @"\b(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\b");
Console.WriteLine(output.Value);