0

我有这种字符串File type: Wireshark - pcapng ,所以我想要的是如果我的字符串以File type:take 和 parse开头Wireshark - pcapng

这是我尝试过的:

var myString = @":\s*(.*?)\s* ";
4

3 回答 3

7

代替正则表达式,使用string.StartsWith方法,例如:

if(str.StartsWith("File type:"))
   Console.WriteLine(str.Substring("File type:".Length));

你会得到:

 Wireshark - pcapng

如果您想从结果字符串中删除前导/尾随空格,请使用string.Trim如下:

Console.WriteLine(str.Substring("File type:".Length).Trim());

或者,如果您只是想摆脱前导空格,请使用string.TrimStart,例如:

Console.WriteLine(str.Substring("File type:".Length).TrimStart(' '));
于 2013-04-22T10:54:37.757 回答
1

你为什么不File type:从你的字符串中删除:

str = str.Replace("File type: ",string.Empty);

或者您可以使用以下命令检查字符串是否以开头File type:并删除该部分string.Remove()

if(str.StartsWith("File type: "){
    str=str.Remove(11); //length of "File Type: "
}
于 2013-04-22T10:56:10.247 回答
0

这应该可以解决问题:

(?<=^File type: ).*$

所以...

var match = Regex.Match("File type: Wireshark - pcapng", @"(?<=^File type: ).*$");
if(match.Success)
{
    var val = match.Value;
    Console.WriteLine(val);
}
于 2013-04-22T10:53:20.293 回答