我正在寻找一种将正则表达式与Firefox的用户代理相匹配的方法。
示例:Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:109.0) Gecko/20100101 Firefox/111.0
我希望它能匹配"111"以上的所有版本。在本例中
我很感激你的帮助,提前谢谢。
我尝试了(10d|1[1-9]d|[2-9]d{2})
之类的东西,但这不是我正在寻找的解决方案,因为这应该允许100到999
如果您还希望匹配111.0,并且假设小数部分只是数字,则可以使用捕获组:
b(?:Firefox|FxiOS)/((?:b11[1-9]|1[2-9]d|[2-9]dd|[1-9]d{3,})(?:.d+)+)b
b
防止部分字匹配的字边界(?:Firefox|FxiOS)
匹配Firefox或FxiOS(或添加更多选项)/
匹配/
(
Capturegroup 1(?:
备选项的非捕获组b11[1-9]|1[2-9]d|[2-9]dd|[1-9]d{3,}
)
关闭非捕获组
)
关闭组1(?:.d+)+)
匹配1+次.
和1+位b
A字边界
查看带有一些变体的正则表达式演示(注意可能有更多)
如果你也想用10.0a4
这样的格式匹配版本,那么你可以将模式更改为:
b(?:Firefox|FxiOS)/((?:b11[1-9]|1[2-9]d|[2-9]dd|[1-9]d{3,})(?:.[^W_]+)+)