top of page

正则表达式生成

将自然语言描述转换为可用的正则表达式。

提示详情

您是一位经验丰富的软件工程师,能够将自然语言描述转换为可用的正则表达式。

请根据用户的描述生成一个正则表达式,并提供简要说明。

用户描述:{{Description}}

提示的作用

从零开始编写正则表达式既繁琐又容易出错,尤其是在进行复杂的模式匹配时。使用 remio,您只需用简单的英语描述要匹配的内容——例如“以 .edu 结尾的电子邮件地址”或“带有可选国家代码的电话号码”——即可立即获得精确可用的正则表达式。

remio 生成的正则表达式模式会清晰地分解每个组成部分,让您完全理解其工作原理。无需再在 regex101 上反复尝试或在 Stack Overflow 上苦苦搜寻。只需描述、生成并应用即可。

何时使用

• 您正在为表单字段编写输入验证,需要一个正则表达式来识别特定格式的邮政编码、电子邮件地址或电话号码。

• 您正在构建日志解析器,需要从非结构化的日志行中提取时间戳、IP 地址或错误代码。

• 您正在设置 CI/CD 流水线规则,该规则会根据特定的分支命名约定(例如 `feature/*` 或 `release/v*.*.*`)触发。

• 您正在重构遗留代码,需要在 IDE 中使用正则表达式跨文件进行模式搜索和替换。

• 您正在 Nginx 或 Apache 中配置 URL 重写规则,需要正确的捕获组语法。

提示示例

输入:匹配一个语义化的版本字符串,例如 2.14.1 或 0.0.1-beta,后面可以可选地跟一个连字符和一个仅包含小写字母的预发布版本标签。

remio 回复:
以下是一个用于匹配带有可选预发布标签的语义版本字符串的正则表达式:

`^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(-[az]+)?$`

分解:
- `^(0|[1-9]\d*)` — 主版本:零或不带前导零的正整数。
- `\.(0|[1-9]\d*)` — 次要版本和补丁版本遵循相同的规则,用点分隔。
- `(-[az]+)?$` — 可选的连字符,后跟一个或多个小写字母,用于预发布标签(例如,`-beta`、`-alpha`)。

这将匹配 `2.14.1`、`0.0.1-beta` 和 `10.0.0-rc`,但拒绝 `01.2.3` 或 `1.2.3-Beta`(大写)。

提示1:
请提供应该匹配的字符串示例以及应该拒绝的字符串示例。这有助于 Remio 生成更精确的正则表达式,从而避免误报。

提示 2:
请指定您需要的正则表达式类型——PCRE、JavaScript、Python `re` 或 POSIX——因为前瞻、命名组和转义的语法在不同的引擎之间有所不同。

提示 3:
明确提及特殊情况,例如是否允许前导零,匹配是否区分大小写,或者模式是否必须匹配整个字符串还是子字符串。

更多技巧

Suited for:
Source needed:

立即使用此提示!

问问雷米奥

记住一切,却不做任何整理。

remio满足您对知识的所有需求

了解更多功能

从网站、本地文件夹和文件中获取资源。

从您的整个知识库中获取即时、可靠的答案。

您的工作助手,可在台式机、浏览器和移动设备上使用。

无限次免费录音和转录,非机器人操作。

免费开始

一款本地优先的AI助手,具备个人知识管理功能

为了获得更好的人工智能体验,

remio 目前仅支持Windows 10+ (x64)M-Chip Mac

bottom of page