我正在寻找一种简单的方法来解析由引号("
或'
)包围的文本作为字符串,其中相同的引号字符可以在该字符串中使用(由反斜杠转义{ {1}})。
所以PHP在解析字符串时基本上与内部相同。 Python有\
(感谢@georg指出这一点)。
输入
literal_eval
输出
"This is a \"cool\" string"
使用This is a "cool" string
会有效,但我想避免使用它。以下示例
eval
内置有什么东西吗?
哇,我真的认为“解析一个字符串”的解释是“所以基本上PHP在解析字符串时内部做的事情”将是一个明显的要求:D
想一个更高级的例子:
输入
$str = '"This is a \\"cool\\" string"';
$a = eval("return $str;");
var_dump($a);
// Output: string(23) "This is a "cool" string"
输出
"This is a \"cool\" string that contains one backslash \\ or maybe two in a row \\\\"
相应的PHP代码是:
This is a "cool" string that contains one backslash \ or maybe two in a row \\
我正在为$input = '"This is a \\"cool\\" string that contains one backslash \\\\ or maybe two in a row \\\\\\\\"';
$output = parse_quoted_string($str);
var_dump($output);
// string(78) "This is a "cool" string that contains one backslash \ or maybe two in a row \\"
寻找合适的功能。