微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

RegEx为“不以”开头“

以下检查是否以“结束”开头:
if [[ "$line" =~ ^End ]]

我试图找出如何匹配不以“02/18/13”开头的东西.我尝试过以下方法

if [[ "$line" != ^02/18/13 ]]

if [[ "$line" != ^02\/18\/13 ]]

他们似乎都没有工作.

bash没有“不匹配正则表达式”运算符;你可以否定(!)测试“匹配正则表达式”运算符(=〜):
if [[ ! "$line" =~ ^02/18/13 ]]

或使用“不匹配的字符串/ glob模式”运算符(!=):

if [[ "$line" != 02/18/13* ]]

全局模式与正则表达式完全不同,令人困惑.在这种情况下,模式很简单,唯一的区别是整数字符串预期与整个字符串匹配,因此不需要锚定(事实上,它需要一个通配符来解除模式结束).

原文地址:https://www.jb51.cc/bash/384232.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐