変数にファイルを保存しました。たとえば、$buffer
です。 $buffer
の末尾に"\n"
があります。私はそれを空の値に置き換えたい。試しましたregexpを使って変数の最後に nをマッチングする方法
regexp "\n$" $buffer
コードはTCLにありますが、私はPerlやTCLのどちらでそれをやることができるかを知る必要があります。
変数にファイルを保存しました。たとえば、$buffer
です。 $buffer
の末尾に"\n"
があります。私はそれを空の値に置き換えたい。試しましたregexpを使って変数の最後に nをマッチングする方法
regexp "\n$" $buffer
コードはTCLにありますが、私はPerlやTCLのどちらでそれをやることができるかを知る必要があります。
:
$buffer =~ s/\n$//;
=~
が結合オペレータ、s
は、置換演算子であり、/
オペランドの区切り文字であるので、\n$
は、空の文字列に置き換えられ。
chomp($buffer)
でも同じことが達成されます。
私の匿名希望者に:OPは解決策を求めました* "PerlまたはTCLで*"。 – delicateLatticeworkFever
方法について:Perlのchompのでregsub {\n$} $buffer ""
置換された文字列を' buffer'変数に書き戻す 'regsub {\ n $} $ buffer'" buffer "がさらに良いでしょう。 –
は、レコードの終わり区切りを削除します。だから、 '\ n'を削除するには、chomp $buffer
が必要です。 @Borodinが言ったように
chomp
は、おそらく最高ですが、あなたはまた、唯一の文字列の末尾に一致し\z
を使用することができます。
$buffer =~ s/\n\z//;
は働いていません。私は – Nitesh
をチェックしました。私はtclインタプリタを持っていないので、本当にチェックできません。パターンを入れて、** {** ** ** ** ** ** **を使わずにトークンを入れてみてください。** – tuxuday