Linux正则表达式-定位元字符

有两个元字符用于指定字符串出现在行首或行末。脱字符(^)是指示开始的单字符正则表达式。美元符号($)是指示行结尾的单字符的正则表达式。这些通常称为"定位符",因为它们将匹配限定在特定位置。例如,可以使用以下表达式打印以First开始的行:
^First
没有^元字符,这个表达式将打印包含First的任意行。

通常,使用VI输入要由troff处理的文本,并且不想让空格出现在行的结尾。如果想找到(并删除)它们,下面的正则表达式可以匹配在结尾处有一个或多个空格的行:
□□*$

Troff请求和宏必须在行的开始处输入。它们是两个字符的字符串,前面带有一个句点。如果请求或宏有一个参数,那么它通常后面跟有一个空格。用于搜索这样的请求的正则表达式是:
^\...□

这个表达式匹配"行首有一个句点,随后跟有两个字符的字符串,然后是一个空格的行"。
可以使用两个连续的定位元字符来匹配空行,即:^$

可以使用这种模式计算文件中的空行数,在grep中使用计数选项-c:

$ grep  -'^$' ch04
5

如果想使用sed来删除空行,那么这个正则表达式很有用。下面的正则表达式可用于匹配空行,即使其中包含空格:
^□*$

参考资料:http://www.linuxawk.com/communication/441.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值