我有一个字符串:
text abc =“gsdfhdfhdfjdgfj”cde =“1234 235”> hh
我想找到引号中的单词(引号中有两个以上的单词..
所以在这个例子中,我有两个得到两个字符串:
gsdfhdfhdfjdgfj
1234 235
我知道我可以用regular expressions
做到这一点,但也许有另一种解决方案?可能与substring
?
答案 0 :(得分:1)
非正则表达式看起来像这样:
private static IList<string> betweenQuotes(string input)
{
var result = new List<string>();
int leftQuote = input.IndexOf("\"");
while (leftQuote > -1)
{
int rightQuote = input.IndexOf("\"", leftQuote + 1);
if (rightQuote > -1 && rightQuote > leftQuote)
{
result.Add(input.Substring(leftQuote + 1, (rightQuote - (leftQuote + 1))));
}
leftQuote = input.IndexOf("\"", rightQuote + 1);
}
return result;
}
包含两个示例的列表中的结果。
答案 1 :(得分:1)
string str = "text abc=\"gsdfhdfhdfjdgfj\" cde=\"1234 235\" >hh";
var result = str.Split('"').Where((s, i) => i % 2 == 1).ToList();