2011-05-08 111 views

回答

7

沒有字符正在被替換,它只是在開頭插入num選項卡,因此您可以說它將替換零寬度「行首」標記。誰寫了這樣更好的事情會更好一些:

tabbed = "\t" * num + original 

正則表達式真的不是簡單字符串連接的正確工具。

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

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

前綴所有的線用標籤是一個合理的事情,比分裂噪音更小,前綴,並重新加入。如果您只希望處理字符串中的單行,那麼簡單字符串連接將是更好的選擇。

+0

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

5

^表示正則表達式語法中的「行首」,所以這將在每行的開頭插入num製表符。從技術上講,你可以說它代替了每一行開頭的空字符串。