Php 查找特定于字符串的信息

Php 查找特定于字符串的信息,php,mysql,regex,Php,Mysql,Regex,我有一个字符串,想找到一些东西: 字符串示例: INSERT INTO #__users VALUES("XXXX","First User","admin","69"); 如何找到数字id? 其中XXX-是任意数字。您可以使用preg_match函数获取此正则表达式的值: ^INSERT\s+INTO\s+#\S+\s+VALUES\("([^"]+) 正则表达式: ^-如果添加m标志,则字符串的开头可以是行的开头 插入-文本字符串插入 \s+-1个或多个空白符号 直译 \s+-1个或多个

我有一个字符串,想找到一些东西:

字符串示例:

INSERT INTO #__users VALUES("XXXX","First User","admin","69");
如何找到数字id? 其中XXX-是任意数字。

您可以使用preg_match函数获取此正则表达式的值:

^INSERT\s+INTO\s+#\S+\s+VALUES\("([^"]+)
正则表达式:

^-如果添加m标志,则字符串的开头可以是行的开头 插入-文本字符串插入 \s+-1个或多个空白符号 直译 \s+-1个或多个空白符号 \S+-文字后跟1个或多个非空白符号 \s+-1个或多个空白符号 值\-文字值 [^]+-如果此处只有数字,则与1个或多个字符匹配的捕获组可以使用\d+。 看。您需要的字符串位于捕获的组1中,因为[^]+将安全地匹配除双引号以外的所有内容。如果只包含数字,请使用\d+:^INSERT\s+插入\s+\s+值\\d+。如果字符串未出现在字符串/行的开头,请删除^


你想要的结果是什么?您想定位XXXX或在数据库中创建的id吗?您是指插入的行的id吗?你用什么来插入它?我们仍然不知道你真正想要的是什么。你能给我们举个例子吗?
$re = '/^INSERT\s+INTO\s+#\S+\s+VALUES\("([^"]+)/'; 
$str = "INSERT\nINTO #__users\nVALUES(\"9999\",\"First User\",\"admin\",\"69\");"; 
preg_match($re, $str, $matches);
echo $matches[1];