导读:
正则表达式是Shadowrocket(小火箭)实现精细化流量分流的核心工具,掌握其语法能帮助用户根据域名、IP、关键词等条件自动匹配代理规则,本文详解小火箭正则表达式规则的编写方法与实战技巧。
为什么正则表达式能提升规则效率
小火箭支持多种规则类型,其中正则规则(REGEX)匹配精度最高,与简单的域名关键词匹配相比,正则表达式可以处理复杂的URL模式、路径参数甚至动态内容。
^https?://.*\.google\.com/.*$
这条规则可以匹配Google旗下所有子域名的所有HTTPS路径,比逐个添加域名更高效,正则表达式的核心优势在于一次编写,长期生效,大幅减少规则维护成本。
小火箭正则表达式基础语法
常用元字符
| 元字符 | 含义 | 示例 |
|---|---|---|
^ |
匹配字符串开头 | ^https?:// |
| 匹配字符串结尾 | \.png$ |
|
| 匹配任意字符 | ||
| 匹配0次或多次 | ||
| 匹配1次或多次 | ||
| 匹配0次或1次 | https? |
|
[] |
字符集 | [a-zA-Z] |
| 分组 | (com|net|org) |
|
\ |
转义字符 | \. |
实战示例
匹配特定域名:
^https?://(www\.)?example\.(com|org|net)
可匹配example.com、www.example.com、example.org等。
匹配特定路径:
^https?://.*/api/v[0-9]+/data
可匹配任意域名的API路径,如api/v1/data、api/v2/data。
匹配文件类型:
\.(jpg|jpeg|png|gif|webp)$
可匹配所有图片资源。
全局路由模式中的规则配置
小火箭的「全局路由」设置决定流量如何被处理,包含四个核心选项:
- 配置:加载用户自定义的规则集
- 代理:强制走代理的规则
- 直连:直接连接的规则
- 场景:按Wi-Fi网络或时间段切换规则
在「代理」或「直连」板块中添加REGEX类型规则时,语法格式为:
DOMAIN-SUFFIX,google.com,PROXY
DOMAIN-KEYWORD,facebook,PROXY
URL-REGEX,^https?://.*\.google\.com/.*$,PROXY
建议将精确域名放在前面,正则规则放在后面,避免正则匹配优先级问题。
常见问题FAQ
Q1:规则不生效怎么办
现象:添加正则规则后,流量仍走默认通道
原因:正则语法错误、规则优先级过低、与其他规则冲突
解决方法:使用在线正则测试工具验证语法;检查规则顺序,确保精确匹配在前;尝试删除其他可能冲突的规则
Q2:正则匹配性能差怎么办
现象:开启多条正则规则后连接变慢
原因:复杂正则表达式增加匹配计算量
解决方法:简化正则逻辑,优先使用DOMAIN-SUFFIX替代正则;将常用规则转为普通域名匹配
Q3:如何快速测试规则
现象:不确定规则是否正确匹配目标
解决方法:在小火箭「配置」-「测试规则」中输入目标URL,选择规则类型进行测试
进阶技巧与优化建议
- 善用域名后缀匹配:DOMAIN-SUFFIX比正则更高效,优先使用
- 避免过度复杂:单条正则不宜超过50个字符
- 定期清理无效规则:长期使用后检查规则库,移除失效表达式
对于需要稳定跨境办公或学术资源访问的用户,建议在规则配置完成后,通过可靠节点进行实际测试,确保规则与业务需求匹配,掌握正则表达式能让小火箭的流量管理更加精准高效,是进阶用户的必备技能。
