我有一个字符串:
var display=@("every (Name=Event(HostInfo='HostName',UserInfo='UserName'))");
此字符串可能会更改,但可能并非始终以每个字符开头(名称= ,但始终包含 HostInfo 或 UserInfo 将在方式显示。我需要提取HostName和UserName的信息。 比方说,其他时间显示字符串可以是:
var display=@("Event(UserInfo='UserName'))");
有什么想法吗?
答案 0 :(得分:2)
我会像两个正则表达式那样运行两次:
string UserInfoPattern = @"UserInfo='(?<UserInfo>[^']+)";
string HostInfoPattern = @"HostInfo='(?<HostInfo>[^']+)";
这样,如果订单被切换,你的正则表达式就不会破坏。
答案 1 :(得分:1)
用户正则表达式。最简单的情况是
string pattern1 = @"HostInfo='(?<HostInfo>[^']*)'";
string pattern2 = @"UserInfo='(?<UserInfo>[^']*)'";