我正在尝试替换文件中字符串中间出现的任何句点。
我使用sed
以及's/./5/g'
和's/'.'/5/g
尝试了's/"."/5/g'
,但没有一个能为我提供我想要的输出。
第一个选项将整个文件替换为单个5,第二个选项用5替换每个单个字符,第三个选项似乎没有做任何事情(我使用grep来计算。的出现次数。它们仍在那里)。
非常感谢任何有关如何执行此操作的帮助
INFILE:
010001010.10101010101
需要outfile:
010001010510101010101
答案 0 :(得分:3)
正则表达式模式.
表示"任何字符"。你想要s/\./5/g
答案 1 :(得分:0)
只需在dot之前添加反斜杠,因为它的特殊字符
sed 's/\./5/g' file
答案 2 :(得分:0)
您遇到的问题是“。”也被用作通配符。您可以通过使用\来进行ESCAPING来解决此问题,因此它就像s/\./5/g
答案 3 :(得分:0)
对于简单的转换,您可以使用tr:
cat file | tr "." "5"