写一个函数,能把输入的文本照双字分词的模式分解出来,(紧挨着的数字,和字母分为一组,仅需要考虑汉字,英文字母和数字的情况),例如:
中华人asd民共123dd和国    输出为  中华  华人  asd  民共 123dd 和国

解决方案 »

  1.   

    不知道这个题的意图是什么。
    如果是考怎么区分汉字和数字(英文)的化。
    如下判断即可:
    str.getBytes().length == str.length()则是英文或数字,反之是中文。
      

  2.   


    楼上不对啊,我试了下中文也是str.getBytes().length == str.length()啊
      

  3.   

     public static void GG(String str){        
           str = "中华人asd民共dd和国";//这里随意了。。
            String[] strs = str.split("(?<=[a-zA-Z])(?=[\\p{InCJK Unified Ideographs}&&\\P{Cn}])|(?<=[\\p{InCJK Unified Ideographs}&&\\P{Cn}])(?=[a-zA-Z])");         for(int i = 0; i < strs.length; i++) {
                System.out.println(strs[i]);
            }
     }}
      

  4.   


    第3行应该是:String[] strs = str.split("(?<=[a-zA-Z0-9])(?=[\\p{InCJK Unified Ideographs}&&\\P{Cn}])|(?<=[\\p{InCJK Unified Ideographs}&&\\P{Cn}])(?=[a-zA-Z0-9])")