gsub不会在gawk中正确替换字符

时间:2015-07-03 17:13:56

标签: awk gsub gawk

以下是我的代码片段:

gsub(/'/, "'", name)
gsub(/</, "&lt;", name)
gsub(/>/, "&gt;", name)
gsub(/&/, "&amp;", name)

我想替换4个字符:'&lt; &GT; &安培;但是它没有按照我想要的方式工作,例如:我想将<替换为&lt;,它给了我这个:<lt;

有没有解决方案?

1 个答案:

答案 0 :(得分:5)

&gsub(以及subgensub)的特殊字符。 它代表替换字符串中匹配的子字符串。 要在替换字符串中获取文字&,请在其前面加上两个反斜杠:\\&

https://www.gnu.org/software/gawk/manual/gawk.html#String-Functions