php正则表达式中的转义斜杠
我试图用PHP执行preg_匹配,但无法正确地避开斜杠。preg_匹配应该返回Prozessor和first slash之间的subsertingphp正则表达式中的转义斜杠,php,regex,preg-match,Php,Regex,Preg Match,我试图用PHP执行preg_匹配,但无法正确地避开斜杠。preg_匹配应该返回Prozessor和first slash之间的subserting $str="Prozessor: AMD A-Serie A8-4500M / 19 GHz ( 28 GHz ) /"; preg_match('/Prozessor: (.*) \//', $str, $matches) Prozessor: AMD A-Serie A8-4500M / 19 GHz ( 28 GHz ) / 我想知道处理
$str="Prozessor: AMD A-Serie A8-4500M / 19 GHz ( 28 GHz ) /";
preg_match('/Prozessor: (.*) \//', $str, $matches)
Prozessor: AMD A-Serie A8-4500M / 19 GHz ( 28 GHz ) /
我想知道处理器的名称,它应该会还给我
AMD A-Serie A8-4500M
我做错了什么使用/Prozessor:(.*?)\/
。这将取代一个。例如:
$str="Prozessor: AMD A-Serie A8-4500M / 19 GHz ( 28 GHz ) /";
preg_match('/Prozessor: (.*?) \//', $str, $matches);
var_dump($matches[1]);
// string(33) "Prozessor: AMD A-Serie A8-4500M"
使用非贪婪量词:
preg_match('/Prozessor: (.*?) \//', $str, $matches)
或字符类:
preg_match('/Prozessor: ([^\/]*) \//', $str, $matches)
另外请注意,如果更改正则表达式分隔符,则无需担心转义:
preg_match('#Prozessor: ([^/]*) /#', $str, $matches)
这项工作:
或者,您也可以在正则表达式的末尾添加一个ungreedy修饰符:
preg_match('/Prozessor: (.*) \//U', $str, $matches)
更多信息请点击此处:
string(20) "AMD A-Serie A8-4500M"
preg_match('/Prozessor: (.*) \//U', $str, $matches)