我将一个文件存储在一个变量中,比如$buffer
. "\n"
末尾有一个$buffer
。我想用空值替换它。我试过了
regexp "\n$" $buffer
不工作。代码在 TCL 中,但我需要知道如何在 Perl 或 TCL 中完成。
string trim $buffer \n
请参阅手册。
在 Perl 中,chomp 删除了记录结束分隔符。因此,要删除 '\n',您只需要chomp $buffer
.
怎么样:regsub {\n$} $buffer ""
chomp
正如@Borodin 所说,这可能是最好的,但您也可以\z
仅在字符串末尾使用匹配:
$buffer =~ s/\n\z//;
在 Perl 中:
$buffer =~ s/\n$//;
=~
是绑定运算符,s
是替换运算/
符,是操作数的分隔符,因此\n$
被空字符串替换。
chomp($buffer)
将完成同样的事情。