lua-users home
lua-l archive

[Date Prev][Date Next][Thread Prev][Thread Next] [Date Index] [Thread Index]

On Thu, Jul 31, 2008 at 5:47 AM, Jerome Vuarand
<> wrote:
> 2008/7/31 Luiz Henrique de Figueiredo <>:
>>> what is the most efficient way of counting the number of lines?
>> Try this one:
>> local n=0
>> for i in s:gmatch("\n") do n=n+1 end
>> print(n)
> Also:
> local n = select(2, s:gsub('\n', '\n'))

You can make it so just an empty string is pushed if there is at least
one newline:

local n = select(2, s:gsub("[^\n]*\n[^\n]*", ""))

I haven't benchmarked it though.


-Patrick Donnelly

"One of the lessons of history is that nothing is often a good thing
to do and always a clever thing to say."

-Will Durant