- 论坛徽章:
- 15
|
书本上内容摘录:
textfile内容为
This is the (first) line
This is (the) (second) line
命令:sed –ne ‘:lbtest /\([^)]*\)\(([^)]*)\)\(.*\)/{s//\1\***\3/g;b lbtest};p’ textfile
这个命令的意思是将(first)这样的形式,就是括号的内容(包括括号)替换为“***”,地址addr “/\([^)]*\)\(([^)]*)\)\(.*\)/”匹配的是带有(first)这样的形式的行,可以有多个;这里的正则表达式“/\([^)]*\)\(([^)]*)\)\(.*\)/”分三部分,第一部分“\([^)]*\)”表示的是第一个括号之前的内容,比如上面的textfile的第二行的“This is ”;第二部分“\(([^)]*)\)”表示当前数据行的第一个带有括号的内容,比如上面的textfile的第二行的“(the)”;第三部分“\(.*\)”表示的是第一个括号后的内容,比如上面的textfile的第二行的“ (second) line ”; |
|