Search results
Results From The WOW.Com Content Network
This module is subject to page protection.It is a highly visible module in use by a very large number of pages, or is substituted very frequently. Because vandalism or mistakes would affect many pages, and even trivial editing might cause substantial load on the servers, it is protected from editing.
Regular expressions (or regex) are a common and very versatile programming technique for manipulating strings. On Wikipedia you can use a limited version of regex called a Lua pattern to select and modify bits of text from a string. The pattern is a piece of code describing what you are looking for in the string.
The captures can be accessed later in the search string or in the string.gsub replacement string as %1 to %9, and are returned by string.match as an expression list of results. The qualifiers ? - * + specify repetitions of a single character (not a longer string).? means 0 or 1 repetitions: a? matches "a" or "".
The string-search functions in Lua script can run extremely fast, comparing millions of characters per second. For example, a search of a 40,000-character article text, for 99 separate words (passed as 99 parameters in a template), ran within one second of Lua CPU clock time.
Wikipedia:Lua style guide – standards to improve the readability of code through consistency "What do converted templates look like?" (slideshow) Help:Lua debugging – a how-to guide about debugging Lua modules; Help:Lua for beginners – basic tutorial and pointers; Wikipedia:Lua string functions – string performance considerations and limits
Invalid function name: len = string.long(my_str) - The string-length operator is hash mark '#' (as in: #my_str), or use function 'string.len(my_str)' but trying to use unknown function 'string.long(my_str)' will successfully pass during the pre-compile of edit-save, yet it will hit "Script error" when that portion of the Lua script is executed.
The module also uses string.format to join the strings together, but you could just as easily use .., Lua's concatenation operator. ( 'ab' .. 'cd' will give you the string "abcd".) The sandbox is simpler, but it isn't as elegant if something goes wrong - try putting a bad code into both of them to see what I mean.
Help:Lua for beginners; Help:Lua debugging – about debugging Lua modules; Wikipedia:Lua style guide – standards to improve the readability of code through consistency; Module:Sandbox provides a pseudo-namespace for experimenting with Lua modules