7、正则表达式与基础Shell脚本编程

正则表达式与基础Shell脚本编程

1. 正则表达式与模式匹配

正则表达式在文本处理中有着重要的作用,它可以帮助我们更精确地匹配和处理文本。下面介绍一个用于测试字符串与模式匹配情况的脚本:

do
  if expr "$string" : ".*$pattern" >/dev/null 2>&1; then
    echo "regex: $string matched $pattern."
  else
    echo "regex: $string didn't match $pattern."
  fi
  case $string in
  $pattern) echo "shell: $string matched $pattern.";;
  *) echo "shell: $string didn't match $pattern.";;
  esac
done

使用这个脚本的步骤如下:
1. 将脚本保存到一个文件中。
2. 给文件添加可执行权限,命令为 chmod +x filename
3. 运行脚本时至少提供两个参数,第一个参数是要测试的模式,后续参数是要与模式进行匹配的字符串。例如: $ ./patcheck '*' aardvark

需要注意的是,该脚本不会自动对正则表达式进行锚定,甚至会抑制 expr 默认的左侧锚定。如果要进行锚定正则表达式的比较,可将 expr 行修改为: </

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值