我正在使用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 "";
}
}
答案 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; }