regex - 如何shell脚本正则表达式完美匹配?
问题描述
我有一个匹配正则表达式的 Bash 脚本文件。
我的正则表达式脚本文件:
if [[ "$image" =~ [0-9]+(\.[0-9]+){3}\-[0-9]+$ ]]; then
我需要传递仅匹配的案例0.0.0.0-0000
这些是我的输入和结果。
通过:0.0.0.0-0000
通过:0.0.0.0.0.0-0000 << 不需要的匹配
否 : 0.0.0.0-word
否:0.0.0.0
正如我在上面标记0.0.0.0.0.0-0000
的那样,与我的正则表达式匹配。
我的问题是如何修改我的正则表达式以仅匹配模式0.0.0.0-0000
?
解决方案
这个问题解决了。
跟随@第四只鸟我错过了锚(^)的答案。为了明确起止点,它应该在'^'和'$'之间。
你可以参考答案
if [[ "$image" =~ ^[0-9]+(\.[0-9]+){3}\-[0-9]+$ ]]; @The fourth bird Jul 11 at 8:43
感谢各位大佬的关注XD
推荐阅读
- node.js - 通用数据保护条例 (GDPR),如何生成用户历史报告
- c# - C#,Android:删除单例
- javascript - JS:在循环中使用 i 作为字符串的索引返回的是整数,而不是字母
- vba - 如何在引用字符串变量的工作表名称的单元格中输入公式?
- laravel - 在 Laravel 上实现谷歌地图的最佳方法
- javascript - 如何使用单击按钮生成 Canvas 图层
- sql - SQL - 删除只有一列更改的行
- ios - 在 iOS 中使用域 URL 在框架中进行深度链接
- linux - 如何在 ubuntu 14 中安装特定版本的软件包?
- regex - 解码 url(r'^(?P
[-\w]+)/$') 到 Django 中的 path()