我想在空格上分割字符串,而不是在 ()、"" 和 [] 之间分割。
行示例:
set 1 test "favorite text" get (user get "li 1 0") [0, 1, "po"]
预期结果:
['set', '1', 'test', '"favorite text"', 'get', '(user get "li 1 0")', '[0, 1, "po"]']
这是命令处理所必需的。
我想在空格上分割字符串,而不是在 ()、"" 和 [] 之间分割。
行示例:
set 1 test "favorite text" get (user get "li 1 0") [0, 1, "po"]
预期结果:
['set', '1', 'test', '"favorite text"', 'get', '(user get "li 1 0")', '[0, 1, "po"]']
这是命令处理所必需的。
如果没有相同类型的嵌套(例如,括号内的括号),则也可以使用正则表达式。
通过“或”进行常规搜索:
".*?"- 任何用引号括起来的序列\(.*?\)- 括号中的任何序列\[.*?\]- 任何包含在方括号中的序列\S+- 没有空格的字符序列*?- 表示“非贪婪”匹配选项,即 搜索尽可能短的序列。使用嵌套括号解析字符串的选项:
结果: