我想在python字符串中添加一组(双)引号,如果它们丢失但字符串也可以包含引号.
这样做的目的是引用所有尚未引用的命令,因为Windows API要求您在使用_popen()执行进程时引用整个命令行.
以下是一些应该引用的字符串:
<empty string>
type
"type" /?
"type" "/?"
type "a a" b
type "" b
Run Code Online (Sandbox Code Playgroud)
下面是一些应该不被引用:
"type"
""type" /?"
Run Code Online (Sandbox Code Playgroud)
请花时间测试所有例子 ; 检测字符串是否需要引号并不容易.
考虑这两种情况
""a" b"
"a" "b"
前者被解释为带有'嵌套引号'的预引用字符串,但后者被解释为单独引用的字符串.以下是一些突出问题的示例.
" "a" "b" "
" "a" b"
"a ""b"
他们该如何对待?