You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

为何该正则表达式在VS Code中无效但在regex101.com中可匹配?

解决VS Code中正则表达式无法匹配多行代码的问题

问题核心

你的正则在regex101可正常匹配,但VS Code中失效,本质是两者默认配置差异,加上多行代码的换行处理需要特定设置。

具体解决方案

  • 开启正则匹配模式:打开VS Code查找框(快捷键Ctrl+F),点击右上角的.*按钮,激活正则表达式匹配功能。
  • 开启跨行匹配:点击查找框右上角.*按钮右侧的⤶按钮,允许正则跨行匹配换行符——这是匹配多行代码的关键,开启后\s*才能正确识别换行和缩进空格。
  • 复用并验证正则:直接使用你原有的正则表达式即可,VS Code的JavaScript正则引擎和regex101的JS模式完全兼容:
    throw\s+new\s+ApiResponseError\s*\(\s*HttpStatusCode\.([^,]+),\s*('[^']*'|"[^"]*"),\s*new\s+Error\(`([^`]*)`\),\s*(true|false)?\s*\)
    
    粘贴后即可匹配示例中的多行代码块。

额外注意

若仍无匹配结果,检查查找框右上角的Aa按钮是否开启“区分大小写”——示例代码中关键字大小写一致,保持开启状态即可。

内容的提问来源于stack exchange,提问作者Gabriel Henrique

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.22 21:40:15