Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/19.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_Preg Match All_Regex Lookarounds_Regex Group - Fatal编程技术网

Php 用于捕获字符串中特定字母数字模式的正则表达式

Php 用于捕获字符串中特定字母数字模式的正则表达式,php,regex,preg-match-all,regex-lookarounds,regex-group,Php,Regex,Preg Match All,Regex Lookarounds,Regex Group,我希望此代码返回套接字模型。而不是AM3+返回6300 $string=“AMD FX X6六核6300,AM3+,8MB L3(盒式)系列:FX,插槽:AM3+,Numar Nucleue:6,Frecventa:3500 MHz,Frecventa Turbo:4100 MHz”; pregêu match('/[Socket]+[::::]+(?([A-Z]{2}+[0-9]{1}+[+]|[A-Z]{2}+[0-9]{1}+[A-Z]{3}+[[0-9]{4}}+/',$string,$

我希望此代码返回套接字模型。而不是AM3+返回6300

$string=“AMD FX X6六核6300,AM3+,8MB L3(盒式)系列:FX,插槽:AM3+,Numar Nucleue:6,Frecventa:3500 MHz,Frecventa Turbo:4100 MHz”;
pregêu match('/[Socket]+[::::]+(?([A-Z]{2}+[0-9]{1}+[+]|[A-Z]{2}+[0-9]{1}+[A-Z]{3}+[[0-9]{4}}+/',$string,$array);
echo$array['socket'];

在这里,我们只需捕获套接字,后跟空格,
,然后捕获后面第一个逗号之前的内容,这是我们想要的输出
(.+?)

试验 输出
试试这个<代码>[Socket]+匹配
Socket
中的一个或多个字母。阅读regex文档。我想获得处理器插槽“AM3+”。我想精确地匹配这个:Socket:AM3+(“Socket”精确单词“:”和AM3+作为两个字母,一个数字和一个加号+)。非常感谢。
$string = "AMD FX X6 Six Core 6300, AM3+, 8MB L3 (BOX)Serie : FX,Socket : AM3+,Numar nuclee : 6,Frecventa : 3500 MHz,Frecventa Turbo : 4100 MHz";

preg_match('/[Socket]+[ : |:]+(?<socket>([A-Z]{2}+[0-9]{1}+[+]|[A-Z]{2}+[0-9]{1}|[A-Z]{3}+[ ]+[0-9]{4}|[0-9]{4}))/', $string, $array);

echo $array['socket'];
((Socket)\s+?:\s+?(.+?)),
$re = '/((Socket)\s+?:\s+?(.+?)),/m';
$str = '$string = "AMD FX X6 Six Core 6300, AM3+, 8MB L3 (BOX)Serie : FX,Socket : AM3+,Numar nuclee : 6,Frecventa : 3500 MHz,Frecventa Turbo : 4100 MHz";
';

preg_match($re, $str, $matches, PREG_OFFSET_CAPTURE, 0);

// Print the entire match result
var_dump($matches);
array(4) {
  [0]=>
  array(2) {
    [0]=>
    string(14) "Socket : AM3+,"
    [1]=>
    int(65)
  }
  [1]=>
  array(2) {
    [0]=>
    string(13) "Socket : AM3+"
    [1]=>
    int(65)
  }
  [2]=>
  array(2) {
    [0]=>
    string(6) "Socket"
    [1]=>
    int(65)
  }
  [3]=>
  array(2) {
    [0]=>
    string(4) "AM3+"
    [1]=>
    int(74)
  }
}