Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/265.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 mysql错误消息中的regex列名_Php - Fatal编程技术网

Php mysql错误消息中的regex列名

Php mysql错误消息中的regex列名,php,Php,我想从以下错误消息中正则化第二个“”: 重复输入“我想抓住这个”键的“这个可以是任何东西” 我正在使用php,但对正则表达式的工作原理却有着模糊的认识。或者我应该用别的东西代替正则表达式?有什么方向吗?ty.简单明了: 预匹配('/Duplicate entry\'.+\'表示键\'(.+)\'/',$s,$m)并使用$m[1] $m是 array(2) { [0]=> string(68) "Duplicate entry 'this_can_be_anything' for

我想从以下错误消息中正则化第二个“”:

重复输入“我想抓住这个”键的“这个可以是任何东西”

我正在使用php,但对正则表达式的工作原理却有着模糊的认识。或者我应该用别的东西代替正则表达式?有什么方向吗?ty.

简单明了:


预匹配('/Duplicate entry\'.+\'表示键\'(.+)\'/',$s,$m)并使用
$m[1]

$m

array(2) {
  [0]=>
  string(68) "Duplicate entry 'this_can_be_anything' for key 'I_want_to_grab_this'"
  [1]=>
  string(19) "I_want_to_grab_this"
}
这应该起作用:

$yourstring = 'Duplicate entry...';
if (preg_match("=^[^']*'[^']*'[^']*'([^']*)'=", $yourstring, $matches)) {
    echo "Found value: " . $matches[1];
}
但是,这将使任何行与以下格式匹配:

Something 'something' something 'something'

不知道你是否想要。如果不是,请遵循。

@Philipp,如果它是以$m[0]开头的数组