当前位置: 技术问答>linux和unix
正则表达式 谢谢
来源: 互联网 发布时间:2016-09-01
本文导语: 1.$ s/the/x/g 为什么是替换the为x 怎么解释 ? 1.$ s/^[0-9]{1,4}//g 是删除行号 小弟对这俩个这则表达式如何实现的的确是不懂 那位朋友能指点一下 | 第一个没啥好解释的 在sed脚本里 那就是...
1.$ s/the/x/g 为什么是替换the为x 怎么解释 ?
1.$ s/^[0-9]{1,4}//g 是删除行号
小弟对这俩个这则表达式如何实现的的确是不懂 那位朋友能指点一下
1.$ s/^[0-9]{1,4}//g 是删除行号
小弟对这俩个这则表达式如何实现的的确是不懂 那位朋友能指点一下
|
第一个没啥好解释的 在sed脚本里 那就是语法 s/A/B/g 把所有匹配到的A都替换成B
第二句 ^表示从行首匹配 ^[0-9]匹配以0到9开始的行首 即数字开头 {1,4}出现1到4次的
^[0-9]{1,4} 匹配行首开头一到四位的数字 再参照第一句 把匹配到的行首数字全都替换成空 那不就是去掉行首的数字了么
第二句 ^表示从行首匹配 ^[0-9]匹配以0到9开始的行首 即数字开头 {1,4}出现1到4次的
^[0-9]{1,4} 匹配行首开头一到四位的数字 再参照第一句 把匹配到的行首数字全都替换成空 那不就是去掉行首的数字了么
|
第一句:s/A/B/g是Vim的语法,意思是用B替换A,g代表global,全文替换。
第二句:这句是第一句的扩展,意思是用“空”替换“^[0-9]{1,4}”,
^[0-9]代表行首是0-9的数字,
“字符{1,4}”中""是转义字符,其实就是“字符{1,4}”,代表“字符”连续出现1到4次,
那么,s/^[0-9]{1,4}//g意思就是,用空替换行首连续出现1到4次0-9的数字。
第二句:这句是第一句的扩展,意思是用“空”替换“^[0-9]{1,4}”,
^[0-9]代表行首是0-9的数字,
“字符{1,4}”中""是转义字符,其实就是“字符{1,4}”,代表“字符”连续出现1到4次,
那么,s/^[0-9]{1,4}//g意思就是,用空替换行首连续出现1到4次0-9的数字。