我想用单个字符去除文件中的多个空格。
示例:
我使用sed命令如下所示:
cat kill rat
dog kill cat
我使用了以下正则表达式,在 http://www.regexpal.com/ 上似乎匹配成功,但在 sed 中无法工作。
([^ ])*([ ])*
我使用sed命令如下所示:
sed s/\(\[\^\ \]\)*\(\[\ \]\)*/\$1\|/g < inputfile
I expect,
cat|kill|rat
dog|kill|cat
但是我无法让它工作。非常感谢任何帮助。谢谢。
编辑: 请注意,cat / dog可以是除空格以外的任何字符。
*
,它可以匹配任何字符。请参考我的修改后的答案。 - Lekensteynman sed
中了解--regexp-extended
开关:为了可移植性,请使用 POSIX -E
。 - davemyron\n
(其中n是数字)将被相应反向引用表达式匹配的文本替换。” - Lassi