从字符串中提取GUID。我该怎么做?

时间:2018-08-31 09:38:13

标签: c# guid

我有以下格式的字符串:

"object": "Board-f330c10a-a9eb-4253-b554-43ed95c87242"

我想从中提取guid。我试图这样做:

Guid.Parse(followActivity.Object.Split('-').Skip(1).FirstOrDefault());

,但仅占用guid字符串的第一部分。如何提取整个GUID?

任何人都可以帮忙。

4 个答案:

答案 0 :(得分:4)

如果每个输入都遵循与Board-相同的模式,请尝试类似this Example的事情:

string complexGuid = "Board-f330c10a-a9eb-4253-b554-43ed95c87242";
string extractedGuid = complexGuid.Substring(complexGuid.IndexOf('-') +1 );

在给定示例中,complexGuid.IndexOf('-')将返回'-'的第一个索引,该索引是-之后的Board。我们还需要跳过该步骤,因此添加一个+1,以便.Substring()为您提供期望的输出。

答案 1 :(得分:2)

尝试一下

 Guid.Parse(string.Join("-",followActivity.Object.Split('-').Skip(1)))

答案 2 :(得分:2)

或者只是

Guid.Parse(followActivity.Object.Replace("Board-",""));

答案 3 :(得分:1)

如果格式始终相同,则可以使用string.Split()

Guid.Parse(followActivity.Object.Split(new char[]{'-'}, 2)[1]));