我的字符串:AWK:替換「而不是\」
INSERT INTO tb(str) VALUES('So is there really more of you to love now? it\'s ...HB\\');
現在,我要使它成爲SQLite的兼容,所以我不得不更換單引號2個單引號。我試過這個AWK腳本,但是,我只想替換\'
而不是\\'
。
echo "So is there really more of you to love now? it\'s ...HB\\'" | awk '{ gsub(/\57\047/, "\047\047"); print; }'
我在類似的思路上想,謝謝:-) – Pradeep
如果'\''不在行首,可以簡化爲'sed -E's /([^ \\])\\\ x27 /&\ x27/g'' ...或者使用帶週期的工具...'perl -pe's /(?!<\\)\\\ x27/$&\ x27/g'' – Sundeep
我使用了gsub(/ \\\\ X27 /, 「\ X99 \ X0 \ X0 \ X99」); GSUB(/ \\\ X27 /, 「\ X27 \ X27」); GSUB(/ \ X99 \ X0 \ X0 \ X99/「\\\\\ X27」);因爲\ x99正在干擾某些unicode字符。 – Pradeep