有没有办法获取 GUID 的前五个字符?

3
据我所知,以下代码将创建一个类似于“xxxx-xxxxx .. etc”的字符串。
UserUId = Guid.NewGuid().ToString();

我想要做的是捕获前五个 x。我知道可以使用下面的方法获取前四个字符,但如何跳过“-”并获取前五个字符,而不必先将 GUID 放入变量中,然后在子字符串中两次使用该变量。
UserUId = Guid.NewGuid().ToString().Substring(0, 4);

3
我感觉应该把这个留在这里:GUID是全局唯一的,但GUID的子字符串不是 - Joelius
2个回答

10
你可以使用N格式说明符来获取GUID而不需要任何额外的格式:
UserUId = Guid.NewGuid().ToString("N").Substring(0, 5);

1
@Alan2 - 是的。抱歉,我忘记将4改为5了。 - Sean

1
如果你想将文本分割成子字符串,例如 abc-def-ghi,你可以使用 String.Split() 方法:
string text="abc-def-ghi";
string[] array=  text.Split('-'); //character 

现在数组[0]将包含"abc",数组[1]将包含"def",数组[2]将包含"ghi"。

1
楼主不想拆分字符串,楼主想要获取 GUID 字符串的前 5 个字符 xxxx-x,而无需创建多个子字符串然后重新组合它们。 - dbc

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接