Notice: Any messages purporting to come from this site telling you that your password has expired, or that you need to verify your details, confirm your email, resolve issues, making threats, or asking for money, are
spam. We do not email users with any such messages. If you have lost your password you can obtain a new one by using the
password reset link.
Due to spam on this forum, all posts now need moderator approval.
Entire forum
➜ MUSHclient
➜ Lua
➜ Converting a string into a table
|
Converting a string into a table
|
It is now over 60 days since the last post. This thread is closed.
Refresh page
| Posted by
| Gaznox
(6 posts) Bio
|
| Date
| Sun 27 May 2007 05:19 AM (UTC) |
| Message
| I was reading on how to use tables and I noticed that there is a table.concat command that strings together table values. Is there anything that does the reverse as in change:
the,quick,brown,fox,jumped
into:
t =
{
"the",
"quick",
"brown",
"fox",
"jumped",
}
| | Top |
|
| Posted by
| David Haley
USA (3,881 posts) Bio
|
| Date
| Reply #1 on Sun 27 May 2007 06:50 AM (UTC) Amended on Sun 27 May 2007 06:51 AM (UTC) by David Haley
|
| Message
| If you know the string ahead of time, you can just do:
t = {"the","quick","brown", ...}
But I'm guessing you don't know ahead of time what the string is. In that case, you should use string.gmatch:
[david@thebalrog:~]$ cat test.lua
#!/usr/bin/lua
s = "hello,world,from,Lua"
for w in string.gmatch(s, "([^,]+)") do
print(w)
end
[david@thebalrog:~]$ lua test.lua
hello
world
from
Lua
EDIT: to complete the example, instead of printing the words, you'd add them to a table using table.insert, for example. |
David Haley aka Ksilyan
Head Programmer,
Legends of the Darkstone
http://david.the-haleys.org | | Top |
|
| Posted by
| Nick Gammon
Australia (23,173 posts) Bio
Forum Administrator |
| Date
| Reply #2 on Sun 27 May 2007 08:59 PM (UTC) |
| Message
| |
The dates and times for posts above are shown in Universal Co-ordinated Time (UTC).
To show them in your local time you can join the forum, and then set the 'time correction' field in your profile to the number of hours difference between your location and UTC time.
17,294 views.
It is now over 60 days since the last post. This thread is closed.
Refresh page
top