2010-12-17 25 views

回答

2

轉到要計數並做線(改只要你想匹配模式):

:s/\<[a-zA-Z]//gn 

這不會替代任何東西,只是將輸出類似3 matches on 1 line

gctrl-g計數{}*爲好,這樣你可以使用它。如果你不想避開特殊字符。

+0

什麼是 「<」 指的是在%S/\ <[A-ZA-Z] // GN? – vehomzzz 2010-12-17 16:18:00

+1

@vehomzzz'\ <'表示單詞開始。 – khachik 2010-12-17 16:19:38

+0

我在幫助文件eval.txt的一行上試過這個解決方案:':for split in(mystring,'\ zs')',它給出了一個不正確的結果,而它給出了正確的結果該行在一個空的緩衝區中。改用'\ w \ +'(或'\ h \ +')!這是因爲'\ <'分隔關鍵字而不是單詞。 – 2010-12-17 16:33:56

1
:echo len(split(getline('.'), '\W\+')) " or \H if you want to ignore numbers as well 

的anwser是在幫助::h split()

+0

似乎更喜歡用正則表達式來獲得結果到一個變量中。 – 2010-12-17 19:01:42

+0

確實。這取決於目標:對我們來說使用一個快速的結果,或者根據這個數字來實現其他的東西。 – 2010-12-17 20:30:32

相關問題