如何从字符串中获取以下数据

时间:2016-12-28 09:52:10

标签: c# string substring

我正在使用C#

我有一个看起来像这样的字符串:

myString = "User1:John&User2:Bob'More text"

我用过

var parsed = HttpUtility.ParseQueryString(myString);

然后我使用parsed["User1"]parsed["User2"]来获取数据。

我的问题是,parsed["User2"]不仅会返回名称,还会返回其后的所有内容。

我想也许可以通过char '分开 但我不知道该怎么做,因为它在Visual Studio中有特定的行为。

我想过这样的事情?

private static string seperateStringByChar(string text)
{
    int indexOfChar = text.IndexOf(');
    if (indexOfChar > 0)
    {
        return text.Substring(0, indexOfChar);
    }
    else
    {
        return "";
    }
}

2 个答案:

答案 0 :(得分:0)

一种干净的方法是将字符串除了'的索引之外,然后获取子字符串。

var splittedText = text.Split('\'');

然后你可以进一步分开。 e.g

var splittedText2 = splittedtText[0].Split('\&');
var User1 = splittedText2[0].Split(':')[1];
var User2 = splittedText2[1].Split(':')[1];

让我们总结分裂。

var users=myString.Split('\'');
var john = users.Split('&')[0].Split(':')[1];
var bob = users.Split('&')[1].Split(':')[1];

答案 1 :(得分:0)

这对我来说很有用,就像Wiktor建议的那样。

if (s.IndexOf("'") > -1) { return text.Substring(0, text.IndexOf("'")); } else { return string.Empty; }