我试图find一个正则expression式匹配1到999之间的任何数字。当使用钩子时,我得到一个语法错误
(bash: Syntax error near unexpected token `(')
而当我不使用钩子什么也没有发生。
我的正则expression式是:
egrep ^([1-9][0-9]?|)$ Numbers
更新:
在terminal上用正则expression式分组提取string
正则expression式来replace可选的下划线
Windows相当于grep -B(在上下文之前)和-A(在上下文之后)?
如何在1and1共享主机上configurationCake 2.3.x的htaccess文件
但我怎么能让他检查我想要他检查的文件,因为知道我可以检查数字,如果我使用回声,但我应该检查文件
在VIM中,为什么您不必在search和replace中添加“$”?
Bash脚本正则expression式
只允许一些字符与grep?
RegEx在linux shell脚本中混淆
这应该匹配1到999之间的任何数字。我添加了{0,2} ,这意味着[0-9]字符组的0和2个重复之间匹配。
^[1-9][0-9]{0,2}$
如果你想匹配括号和管道字符,那么你需要逃避它们:
^([1-9][0-9]{0,2}|)$
将正则表达式用双引号括起来,或者用反斜杠转义出来。
egrep "^([1-9][0-9]?|)$"或egrep ^([1-9][0-9]?|)$ 。
顺便说一句,你的正则表达式似乎被打破。 egrep "^[1-9][0-9]?[0-9]?$"怎么样egrep "^[1-9][0-9]?[0-9]?$" ?
试试这个:
echo $number | grep '^[1-9][0-9]{0,2}$'
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。