什么是解析2个字符内的字符串的最佳方法

时间:2012-12-09 20:33:23

标签: c#

我有这个字符串:

“本地主机上的网络适配器'Realtek PCIe GBE系列控制器'”

在“'”之间只返回字符串的最佳方法是什么? (Realtek PCIe GBE系列控制器)

3 个答案:

答案 0 :(得分:2)

如果您对正则表达式感到满意,可以使用如下模式:

/'[^']*'/

捕获单引号之间的所有内容

答案 1 :(得分:2)

您可以使用正则表达式,如下所示:

var s = "hello 'world' hehe";
var m = Regex.Match(s, "'([^']*)'");
string res = null;
if (m.Success) {
    res = m.Groups[1].ToString();
}
Console.WriteLine(res);

解决方案的关键是这个正则表达式:

'([^']*)'

它在找到单引号时开始匹配,并继续直到找到结束引号,捕获其间的所有内容。然后通过Regex API检索捕获的组。请注意,您定义的捕获组从索引1开始;索引零保留为表示“整个匹配”。

查看demo on ideone

答案 2 :(得分:0)

您可以使用Substring()方法将其删除。

tempStr = str.Substring(str.IndexOf("'")+1);
yourStr = tempStr.SubString(0, tempStr.IndexOf("'"));