我想从这个字符串中提取不同字符串中的浏览器名称和操作系统。如何使用子字符串从中提取它们
{ Browser/leavethis (Operating System) Leavethis/Leavethis (Leavethis, Leavethis) Leavethis/Leavethis/Leavethis }
我想从这个字符串中提取不同字符串中的浏览器名称和操作系统。如何使用子字符串从中提取它们
{ Browser/leavethis (Operating System) Leavethis/Leavethis (Leavethis, Leavethis) Leavethis/Leavethis/Leavethis }
与其拆分用户代理,不如使用 Asp.net 框架已经提供的属性来检测浏览器/操作系统。
用这个
获取浏览器名称Request.Browser.Browser
和浏览器版本Request.Browser.MajorVersion
获取操作系统名称Request.Browser.Platform
和操作系统版本 Request.UserAgent
如下所示的正则表达式应该可以工作,但我怀疑@bastos.sergio 的答案是获得所需内容的正确方法。
Regex r = new Regex(@"{\s+(?<Browser>\w+)/[^(]+\((?<OperatingSystem>[^)]+).+");
string browser;
string OS;
var match = r.Match(s);
if (match.Success)
{
browser = match.Groups["Browser"].Value;
OS = match.Groups["OperatingSystem"].Value;
}