javascript - 获取顺序中所有可能的子串

标签 javascript php regex

有很多解决方案可以找到可能的子字符串。我已经尝试过this php 解决方案。

但是我有具体要求。我需要使用顺序中的字符生成子字符串。例如:如果给定的字符串是:'ABCDE'

可能的组合是:'ABCD'、'ABC'、'ACDE'、'ACD'、'ADE'、'BCDE'、'BCD'、'BDE' 和 'CDE'

(子串长度应大于2,当然这很容易实现。)

不允许的组合:“EDCBA”、“DBA”、“ECBA”、“AABB”等

有人可以建议我如何实现这一目标吗? PHP 或 JavaScript 解决方案都可以接受。

最佳答案

尝试以下:

 function getSubString($str, $length = 3)
 {
    $len = strlen($str);
    $arr = [];
     for($i = 0; $i < $len; $i++)
    {

        $start = $i + 1;
        $end = $len - 1;
        while($start <= $end)
        {
            $l = $length - 1;
            while($l + $start <= $len )
            {
                $eS =  $str[$i].substr($str, $start, $l);
                if ($str != $eS)
                    $arr[] = $eS;
                $l += 1;
            }
            $start += 1;
        }
    }

    return $arr;

 }

关于javascript - 获取顺序中所有可能的子串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29861798/

相关文章:

javascript - Puppeteer 同步定义浏览器和页面

javascript - 使用类名而不是文本内容查找结果

javascript - 如何使用 Jasmine (Angular js) 对自定义装饰器进行单元测试

php - 我可以在双引号 PHP 字符串中下标数组变量吗?

Python新手,等于字符串?

javascript - 将无符号整数数组快速转换为 base64

php - 扩展 DOMElement 对象

php - 字段名称验证添加 with for with jquery 验证

javascript - RegEx 模式不适用于 AJAX 响应

javascript - 嵌套捕获组结果