我有字符串,我需要将它拆分两次并选择追求特殊字符的部分.
让我们说:
string myString = "Word 2010|82e146e7-bc85-4bd4-a691-23d55c686f4b;#Videos|55140947-00d0-4d75-9b5c-00d8d5ab8436";
string[] guids = Regex.Split(myString,";#");
Run Code Online (Sandbox Code Playgroud)
所以这里我得到了两个带有Value + GUID元素的数组.但我只需要Guids,例如:
[0] 82e146e7-bc85-4bd4-a691-23d55c686f4b
[1] 55140947-00d0-4d75-9b5c-00d8d5ab8436
有没有办法用一两行做?
你可以做到这一点,但仅仅因为你可以在一行中做到并不意味着你应该(如果你在这里过于花哨,可读性就会发挥作用).这里显然没有任何验证.
string myString = "Word 2010|82e146e7-bc85-4bd4-a691-23d55c686f4b;#Videos|55140947-00d0-4d75-9b5c-00d8d5ab8436";
string[] guids = Regex.Split(myString, ";#")
.SelectMany(s => Regex.Split(s, @"\|").Skip(1))
.ToArray();
Assert.AreEqual(2, guids.Length);
Assert.AreEqual("82e146e7-bc85-4bd4-a691-23d55c686f4b", guids[0]);
Assert.AreEqual("55140947-00d0-4d75-9b5c-00d8d5ab8436", guids[1]);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
606 次 |
| 最近记录: |