2011-05-08 116 views

回答

7

没有字符正在被替换,它只是在开头插入num选项卡,因此您可以说它将替换零宽度“行首”标记。谁写了这样更好的事情会更好一些:

tabbed = "\t" * num + original 

正则表达式真的不是简单字符串连接的正确工具。

澄清:如果你希望你的字符串包含多行,然后使用:

gsub(/^/, "\t" * num) 

前缀所有的线用标签是一个合理的事情,比分裂噪音更小,前缀,并重新加入。如果您只希望处理字符串中的单行,那么简单字符串连接将是更好的选择。

+0

感谢您的澄清。 – David 2011-05-09 10:00:46

5

^表示正则表达式语法中的“行首”,所以这将在每行的开头插入num制表符。从技术上讲,你可以说它代替了每一行开头的空字符串。