输入正则,选目标语言和场景,生成转义正确、可直接粘贴的代码。测试用的是浏览器 JS 引擎,和目标语言引擎在断言、Unicode、命名组语法等细节上可能有差异。
你已经有正则,这里帮你把它变成各语言里转义正确、可直接粘贴的代码。省去手动处理 \ 翻倍、引号冲突、/ 分隔符这些琐事。
/)+ 修饰符(g / i / m / s)。也可以从常用模板一键填入。grep -P。r"..." 原始串、Go 用反引号、C# 用 @"..."、PHP 自动选 ~ 或 # 分隔符并转义。正则和代码都在浏览器本地生成,不上传。
生成的是"把这段正则搬到某语言"的代码,不做正则语法翻译。各语言引擎在这些地方不同:
/m 是"点匹配换行"(相当于别处的 s),不是多行。\d、\w 在不同引擎对非 ASCII 的处理不一样,Python 3 默认 \d 匹配 Unicode 数字。(?<name>...) vs (?P<name>...)。工具里的快速测试用的是 JS 引擎,只能当参考。
\d+)| 语言 | 代码 |
|---|---|
| JavaScript | const re = /\d+/g; |
| Python | re.compile(r"\d+") |
| Java | Pattern.compile("\\d+") |
| Go | regexp.MustCompile(`\d+`) |
| C# | new Regex(@"\d+") |
| PHP | preg_match('~\d+~', $text) |
Q:为什么 Java 的正则里有两个反斜杠?
A:Java 没有原始字符串(低版本),"\\d" 这个字符串才表示正则里的 \d。工具已经帮你翻倍了。
Q:Go 的代码用反引号,安全吗? A:反引号是 Go 的原始字符串,里面不处理转义,最适合放正则。只有当你的正则本身含反引号时,工具才改用双引号并转义。
Q:修饰符 g 去哪了?
A:g(全局)是 JS/PHP 的概念。其它语言靠 API 区分:Python 用 findall、Java 用 while (m.find())。选"提取全部匹配"场景就会给对应写法。
Q:替换串里的 $1 各语言一样吗?
A:不完全。JS/PHP/.NET/Java 用 $1,Python 用 \1 或 \g<1>,Go 用 $1 但建议写 ${1}。工具按目标语言给示例。
Q:会上传吗? A:不会,全部本地生成。
相关:正则表达式测试 · Escape 编解码 · 文本对比 · JSON 工具 · HTML/JS 互转。