lua has decent string lib in the stdlib, you can also use 3rd party libraries such as https://github.com/stein197/lua-string, I'm not familiar with tcl, can you elaborate why tcl is much better than lua in string manipulations?
Lua has a very minimal string library that doesn't include basic things like escaping and interpolation. It doesn't include regex. I understand the choices behind these decisions and don't disagree with them. But what it means is now you're not just embedding lua, you're embedding lua, vendoring extensions to the standard library, and selecting a regex implementation compatible with your expected runtime and distribution method.
Tcl is built around string manipulation, it's the main and, for a long time, only data type. It has regex built in, a full set of string manipulation functions, and an interpolation primitive.
It's not about what's better. They are both full blown programming languages and you can implement any behavior you care to. In lua you have to care to implement string functions if you're going to do anything complex with strings. Tcl comes with them. That's all.
Although Lua patterns are quite elegant and, in my opinion, more readable than normal regex. Despite having a small string library, Lua still works for many use cases.
Not OP, but I think the reasoning behind that argument is:
TCL has only one data type: string. Everything you do in TCL is reduced to string manipulations up to having optional function arguments starting with a - like a shell command. A string in TCL is like a list in Lisp, the most fundamental building block.