Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/287.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
Php 正则表达式:如何检测引号内的字符串,但包括转义引号?_Php_Regex - Fatal编程技术网

Php 正则表达式:如何检测引号内的字符串,但包括转义引号?

Php 正则表达式:如何检测引号内的字符串,但包括转义引号?,php,regex,Php,Regex,我有一个非常简单的任务,编写一个正则表达式,它将返回引号内的字符串: "this is string" …但也包括任何转义引号: "this is \" also a string" 提前谢谢 首先,确保正则表达式是您真正想要的。他们有变丑的习惯 但如果你确定,这应该可以做到: "((\\.|[^\\"])*)" 外括号仅用于在不带引号的情况下获取字符串内容。如果您不需要它,您可以使用“(\\.\.[^\\\”)*” 要将其发送到PHP,可以使用带单引号的字符串(不转义) 或者,如果必须使

我有一个非常简单的任务,编写一个正则表达式,它将返回引号内的字符串:

"this is string"
…但也包括任何转义引号:

"this is \" also a string"

提前谢谢

首先,确保正则表达式是您真正想要的。他们有变丑的习惯

但如果你确定,这应该可以做到:

"((\\.|[^\\"])*)"
外括号仅用于在不带引号的情况下获取字符串内容。如果您不需要它,您可以使用
“(\\.\.[^\\\”)*”

要将其发送到PHP,可以使用带单引号的字符串(不转义)

或者,如果必须使用双引号,请根据需要将其转义:

"\"((\\\\.|[^\\\\\"])*)\""

首先,确保正则表达式是您真正想要的。它们有变丑的习惯

但如果你确定,这应该可以做到:

"((\\.|[^\\"])*)"
外括号仅用于获取不带引号的字符串内容。如果不需要引号,可以使用
“(\\.\124;[^\\”])*”

要将其发送到PHP,可以使用带单引号的字符串(不转义)

或者,如果必须使用双引号,请根据需要将其转义:

"\"((\\\\.|[^\\\\\"])*)\""

所以它总是以“?”和“$”开头和结尾吗?不,它不总是以“,”结尾,正则表达式在那里结束,但是在结束后有各种各样的东西,“所以它总是以“?”开头和结尾?你试过用“^”和“$”吗?不,它并不总是以“^”结尾,正则表达式在那里结束,但是在结束后有各种各样的东西”