我有一个文件,其中包含数百个类似的片段,下面,我如何使用sed(或awk)改变任何出现的“从表(xxxx)”到“从xxxx”?
我正在尝试删除“table”一词以及“xxxx”的实际表名周围的任何括号。
也可以有分号“;“也在这条线的末端,需要保留。
更改此...
...
delete from r
where (r.action_code, r.region_id) in ( SELECT action_code, region_id
from table(paper_table) --this line
);
insert into table_r(action_code, region_id, indicator_ind)
SELECT t.action_code,
t.region_id,
t.indicator_ind
from table(cheese_table) t; --this line
...
"到这个..."
...
delete from r
where (r.action_code, r.region_id) in ( SELECT action_code, region_id
from paper_table --this line
);
insert into table_r(action_code, region_id, indicator_ind)
SELECT t.action_code,
t.region_id,
t.indicator_ind
from cheese_table t; --this line
....
谢谢你!
1条答案
按热度按时间ebdffaop1#
我将使用GNU
sed
来完成这个任务,让file.txt
内容为然后
给出输出
说明:我使用了
from table
后面的(
...)
中的caputring组,从中我指定了除)
和零个或更多个重复之外的所有字符(*
)、注意,没有以\
作为前缀(
和)
表示文字(
,而以\
作为前缀的)
用于定界捕获组。