如何获得2个字符的所有组合?

时间:2016-12-20 03:24:23

标签: regex

使用正则表达式如何获取字符串上2个字符的所有组合?

示例:" abcdefghi",结果:ab,bc,cd,de,ef 使用3个字符:abc,bcd,cde,def ...

我尝试使用:/.{2}/g但不是递归的,只匹配ab,cd,ef但不匹配bc,de等。

如何做到这一点?

1 个答案:

答案 0 :(得分:1)

你可以试试这个:

<?php echo base64_encode(get_post_meta($post->ID, 'author-link', true)); ?>

示例正则表达式示例here

Java示例代码:

(?=(\w{2}))\w

示例输入:

public static void printVal(String str,int length)
{
    final String regex="(?=(\\w{"+length+"}))\\w";
    final Pattern pattern=Pattern.compile(regex,Pattern.MULTILINE);
    final Matcher matcher=pattern.matcher(str);
    System.out.println("length :"+length);        
    while(matcher.find())
    {
        System.out.println(matcher.group(1));
    }

}

示例输出:

printVal("abcdefghi",2);
printVal("abcdefghi",3);
printVal("abcdefghi",4);