[Date Prev][Date Next][Thread Prev][Thread Next]
- Subject: Re: newbie question - strings and arrays
- From: Chris Marrin <chris@...>
- Date: Thu, 13 Oct 2005 07:47:14 -0700
David Given wrote:
On Thursday 13 October 2005 13:04, Jose Marin wrote:
Thinking on a more esay to use than a fast solution,
how hard would be to create a "String" class in Lua,
with the operator  overloaded?
With Lua 5.1, I believe that the 'string' table is the default metatable for
function string:__index(s, i)
if (type(i) == "number") then
return string.substr(s, i, i)
...might do what you want. (Untested. Never used Lua 5.1.)
This would work fine for ASCII, and maybe even for Latin1 in some cases.
But if your string is UTF8, then you will possibly be getting
intermediate bytes. Plus the count would be a byte count so if you want
the nth character and there are UTF8 sequences before it, you will get
the wrong character.
strings look like Unicode sequences and will support character indexing
as well as things like split, join and substring.
chris marrin ,""$, "As a general rule,don't solve puzzles
firstname.lastname@example.org b` $ that open portals to Hell" ,,.
,.` ,b` ,` , 1$'
,|` mP ,` :$$' ,mm
,b" b" ,` ,mm m$$ ,m ,`P$$
m$` ,b` .` ,mm ,'|$P ,|"1$` ,b$P ,` :$1
b$` ,$: :,`` |$$ ,` $$` ,|` ,$$,,`"$$ .` :$|
b$| _m$`,:` :$1 ,` ,$Pm|` ` :$$,..;"' |$:
P$b, _;b$$b$1" |$$ ,` ,$$" ``' $$
```"```'" `"` `""` ""` ,P`