首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > Java相关 >

拆分一个字符串,以大写字母作为标识,该怎么处理

2012-06-03 
拆分一个字符串,以大写字母作为标识比如accpHelloWorldHH拆为accp Hello World H H[解决办法]Java codepub

拆分一个字符串,以大写字母作为标识
比如accpHelloWorldHH
拆为accp Hello World H H

[解决办法]

Java code
public static void main(String[] args) {        String s = "accpHelloWorldHH";        String[] ss = s.split("(?=[A-Z])");        for(int i = 0 ;i < ss.length; i ++){            System.out.println(ss[i]);        }    }
[解决办法]
我把 1 楼的代改进了一下,仅供参考:

Java code
public class RegexTest {    public static void main(String[] args) {        String s = "AAccpHelloWorldHH";        String[] ss = s.split("(?<!^)(?=[A-Z])");        for(int i = 0 ;i < ss.length; i ++){            System.out.println(ss[i]);        }    }}
[解决办法]
我不会正则表达式,所以就写了一个不用正则的,你可以看看。我也是菜鸟,向各位高手学习正则的写法
Java code
public class StringSplit {    public static void main(String[] args) {          String s = "accpHelloWorldHH";          char[] c=s.toCharArray();          int i=0;                StringBuilder sb = new StringBuilder();          while(i<s.length()){              while(i<s.length()&&c[i]>'Z') {                  sb.append(c[i]);                  i++;              }              System.out.print(sb.toString()+" ");              if(i<s.length()){                  sb = new StringBuilder();                  sb.append(c[i++]);              }                       }          System.out.println(sb.toString());         }} 

热点排行