regex - git commit-msg 钩子的正则表达式问题
问题描述
我正在尝试写入 git commit-msg 钩子以在提交之前检查我的提交文本格式。我希望承诺像“AJ-XX sometext”。其中 XX 是数字,然后是空格和一些文本。而且我的代码不起作用,我 99% 确定我有错误的正则表达式,你能帮我写正确的吗?它看起来像这样:
export REGEX='(AJ'-'0-90-9 )'
export ERROR_MSG="Commit message format must match regex \"${REGEX}\""
它应该接受这样的东西 - “AJ-54 这是提交”
解决方案
您可以尝试以下符合 POSIX ERE 的正则表达式:
export REGEX='^AJ-[0-9]{2} .*'
如果您的正则表达式风格是 POSIX BRE,您可以使用
export REGEX='^AJ-[0-9]\{2\} .*'
如果你不能使用正则表达式并且只能使用通配符/全局模式,你可以使用
export REGEX='AJ-[0-9][0-9] *'
推荐阅读
- python - 为什么python中没有“lange”函数?
- powerbi - cvs 源数据(合并文件夹)中新添加的列 - 在 Power BI 的电源查询部分中刷新时不出现
- php - 使用 JWT 时如何处理服务器和本地时间的差异?
- django - 在迁移中处理 GenericRelation 和 GenricForeignKey
- r - 在R中将任何字符串转换为日期
- visual-studio-code - 无法在 VS Code 中启动客户端 ESLint 消息
- python-3.x - 获取聚焦的文本小部件 [tkinter]
- timer - 使进度条随时间增加
- google-apps-script - 在 gmail 中使用 .replace 到电子表格功能。除了匹配模式的选择之外,是否有替换所有内容?
- java - 为什么使用 mockito 监视实例不能按预期工作