从tcl中的文件中的每一行开始删除多个空格

时间:2016-06-30 06:39:16

标签: tcl

我想从文件的每个和每行的开头删除空格 所以用这个

set fp [open "test_one.tcl" r]
set file_data [read $fp]
set lines [split $file_data "\n"]
regsub -all {^\s+} $lines ""

运行此文件的所有行' test_one.tcl'进入一个名为lines的列表,但我无法删除开头的空格。 请帮帮我。

2 个答案:

答案 0 :(得分:2)

您可以应用换行符敏感regsub命令,而不是按换行符拆分。

% set fp [open "test_one.tcl" r]
file2244890
% set file_data [read $fp]
        this is
    one of
  example
   input file

% close $fp
% regsub -line -all {^\s+} $file_data {} output
4
% puts $output
this is
one of
example
input file

%

答案 1 :(得分:1)

Tcllib中有更高级别的命令:

package require fileutil
package require textutil::trim

::fileutil::updateInPlace test_one.tcl ::textutil::trim::trimleft

在此调用之后,该文件包含左对齐文本。

文档:fileutil包,packagetextutil::trim