Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/245.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 - Fatal编程技术网

Php 从位于一个单词之后但位于另一个单词之前的字符串中获取特定单词?

Php 从位于一个单词之后但位于另一个单词之前的字符串中获取特定单词?,php,Php,我想知道从字符串中获取单词的最佳方法,但是任何出现在指定单词之后而出现在另一个单词之前的单词 例如: $string = "Radio that plays Drum & Bass music"; 然后我想呼应出“鼓与贝斯”部分,所以在演奏之后和音乐之前的任何单词(在演奏与音乐之间) 有什么想法吗 杰米单向: preg_match('/plays (.*) music/', $string, $match); echo $match[1]; 与使用和的正则表达式一起使用: preg_

我想知道从字符串中获取单词的最佳方法,但是任何出现在指定单词之后而出现在另一个单词之前的单词

例如:

$string = "Radio that plays Drum & Bass music";
然后我想呼应出“鼓与贝斯”部分,所以在演奏之后和音乐之前的任何单词(在演奏与音乐之间)

有什么想法吗

杰米

单向:

preg_match('/plays (.*) music/', $string, $match);
echo $match[1];
与使用和的正则表达式一起使用:

preg_match_all('/(?)?
preg_match_all('/(?<=\bplays\b)\s*(.*?)\s*(?=\bmusic\b)/', $string, $matches);