Question

In regex, | is used for alternation. What is the corresponding character in Lua patterns?

Was it helpful?

Solution

First, note that Lua patterns are not regular expressions; they are their own simpler matching language (with different benefits and drawbacks).

Per the specification I've linked to above, and per this answer, there is no alternation operator in a Lua pattern. To get this functionality you'll need to use a more powerful Lua construct (like LPEG or a Lua Regex Library).

OTHER TIPS

Lua does not have alternations in patterns you cannot use (test1|test2). You can only choose between multiple characters like [abcd] will match a, b, c or d.

Another workaround is: Instead of:

apple|orange

Write:

[ao][pr][pa][ln][eg]

Explanation: match alternate letters from each word. voila!

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top