php - 用于返回所有可能的顺序单词分组的正则表达式

标签 php regex

对于给定的字符串“the fox jumped over the rabbit”,以下字符串被认为是连续的词组

狐狸跳过了兔子,
狐狸跳过了,
狐狸跳过去了,
狐狸跳了起来,
狐狸,
狐狸跳过了兔子,
狐狸跳过了,
狐狸跳过去,
狐狸跳了起来,
跳过兔子,
超过了,
跳过去,
在兔子身上,
在,
兔子

任何人都可以建议或提供合适的正则表达式。我尝试了几种变体

\b\w*\b\s+(\b\w*+\b\s?

但我似乎无法获得返回完整预期结果集的表达式。

问候, 苏利弗。

最佳答案

键盘:http://codepad.org/E4rywXD8

$s = "the fox jumped over the rabbit";
$s = split(' ', $s);
$result = array();
foreach ($s as $key => $word)
{
    $r = array();
    for ($i = $key; $i < count($s); $i++)
    {
        $r[] = $s[$i];
        if(count($r) > 1) $result[] = implode(' ', $r);
    }
}

关于php - 用于返回所有可能的顺序单词分组的正则表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8608280/

相关文章:

html - html5 输入类型 url 验证中的模式

php - 正则表达式 (preg_split) : how do I split based on a delimiter, 不包括一对引号中的定界符?

php - 已弃用:mysql_connect()

php - 在 PHP 中使用多个 AND 时出现 MYSQL 语法错误

php - mysqli bind_param 更新查询不起作用

javascript在第二次出现 "/"时替换文本

javascript - JS/正则表达式 : Remove a substring from end of string with optional comma and spaces in front and dot behind

java - 如何在java中使用正则表达式检查重复字符串

php - 自动更新 ext.data.store 上的新数据

php - 在 PhpStorm 中进行单行注释