我需要从预定义的文本块中获取指定字符串后的下两个单词,例如: 如果我的话是'作者'并需要返回约翰史密斯'任何帮助将不胜感激,这纯粹是PHP
答案 0 :(得分:1)
试试这个RegEx:
/author:\s*(\w+\s\w+)/i
匹配单词"作者:"然后是一个空格,然后是接下来的两个单词。但是,它只会捕获最后两个单词。
答案 1 :(得分:1)
Tibor说的话......粘贴你想要解密的确切字符串......
即。如果你的字符串是这样的:
Title: The Book That Never Booked
Author: Richard McPoopsalot
Published Date: 06/06/1966
然后你可以这样做:
preg_match('/(?<=Author: )\S+/i', $string, $match);
$authorName = $match[0];
echo $authorName . "is the author of that book"
答案 2 :(得分:0)
这是我的版本,基于您输入的假设。我会使用正则表达式,因为这是他们真正擅长的事情之一:
$string = "This is a test context for author John Smith.";
preg_match('/author\\s(\\w+\\s\\w+)/', $string, $matches);
echo $matches[1];
输出:
John Smith