如果您想使用Regex
模式获取 GUID。然后,试试这个模式
(\{){0,1}[0-9a-fA-F]{8}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{12}(\}){0,1}
例子
string findGuid = "hi sdkfj 1481de3f-281e-9902-f98b-31e9e422431f sdfsf 1481de3f-281e-9902-f98b-31e9e422431f"; //Initialize a new string value
MatchCollection guids = Regex.Matches(findGuid, @"(\{){0,1}[0-9a-fA-F]{8}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{4}\-[0-9a-fA-F]{12}(\}){0,1}"); //Match all substrings in findGuid
for (int i = 0; i < guids.Count; i++)
{
string Match = guids[i].Value; //Set Match to the value from the match
MessageBox.Show(Match); //Show the value in a messagebox (Not required)
}

注意:我使用了您提供的相同模式,但只是删除了^
指示表达式必须从字符串开头匹配的字符。然后,$
从字符串末尾删除表示表达式必须匹配的字符。
更多关于正则表达式的信息可以在这里找到:
正则表达式 - 一个简单的用户指南和教程
谢谢,
我希望你觉得这有帮助:)