Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/string/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/lua/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
String 格式化字符串以适应Lua中的模式?_String_Lua_Lua Patterns - Fatal编程技术网

String 格式化字符串以适应Lua中的模式?

String 格式化字符串以适应Lua中的模式?,string,lua,lua-patterns,String,Lua,Lua Patterns,假设我有一个模式和一个字符串: String = "ABCDEF" Pattern = "%w%w%w - %w%w%w" 如何使字符串与模式的格式匹配,使其成为的“ABC-DEF”?使用: 请注意,这将替换所有出现的模式。字符串、模式和捕获之间没有一对一的匹配。 同一个字符串的多个模式可以生成相同的捕获。 另外,如果示例中的%w%w-%w%w%w”是一个字符串模式,那么 字符串“ABC-DEF”与之不匹配。与之匹配的模式可以是 %w%w%w%-%w%w%w或%w+%w+或%w*%s*%s*

假设我有一个模式和一个字符串:

String  = "ABCDEF"
Pattern = "%w%w%w - %w%w%w"
如何使
字符串
模式
的格式匹配,使其成为
的“ABC-DEF”

使用:


请注意,这将替换所有出现的模式。

字符串、模式和捕获之间没有一对一的匹配。 同一个字符串的多个模式可以生成相同的捕获。 另外,如果示例中的
%w%w-%w%w%w”
是一个字符串模式,那么 字符串“ABC-DEF”与之不匹配。与之匹配的模式可以是
%w%w%w%-%w%w%w
%w+%w+
%w*%s*%s*%w*
或其他几个。 因此,我建议您定义自己真正需要的规则子集,并
实现您自己的函数来处理它。

String=String:gsub(“()”,{[4]=“-”})
不清楚:您可以更改模式吗?如果是,请参见Yu的答案。如果没有,请更详细地解释当前场景。
string.gsub("ABCDEF", "(%w%w%w)(%w%w%w)", "%1 - %2")