获取这些字符串:
00543515703528
00582124628575
0034911320020
0034911320020
005217721320739
0902345623
067913187056
00543515703528
Run Code Online (Sandbox Code Playgroud)
在java中应用此exp : ^(06700|067|00)([0-9]*).
我的目的是从字符串的开头删除前导"06700,067和00".
它在java中很酷,第2组总是有我想要的数字,但是sed它不是一样的:
$ cat strings|sed -e 's/^\(06700|067|00\)\([0-9]*\)/\2/g'
00543515703528
00582124628575
0034911320020
0034911320020
005217721320739
0902345623
067913187056
00543515703528
Run Code Online (Sandbox Code Playgroud)
我错过了什么?
干杯,
F.
使用扩展正则表达式时,还需要省略\before (和).这对我有用:
sed -r 's/^(06700|067|00)([0-9]*)/\2/g' strings
Run Code Online (Sandbox Code Playgroud)
另请注意,无需单独拨打电话 cat