希望使用正则表达式,实现如下功能
String str=“ysdfsdfsdfaasfjjopgfgmdfsk”;
现在这个字符太长 了,在页面显示会换行,我只想最多取到10个字符,如果少于十个字符,就不改变
于是我就想到使用String.format(),
String str=“ysdfsdfsdfaasfjjopgfgmdfsk”;
str2=String.format(“正则表达式”,str);
得到str2=“ysdfsdfsdf”;如果str=“dfsdf”;
则不改变,str2=“dfsdf”;求高手赐教,在线等。

解决方案 »

  1.   

    这个不用正则吧。。直接用String的subString不行?
      

  2.   

    是啊。
    直接写个方法不就行了么public String cutString(int length,String str) {
         if(str.length > length) return str.subString(0,int);
         return str;
    }
      

  3.   

    subString可以取到子串,如果小于10个字符的会报错
      

  4.   

    不用正则了吧,写个方法不就行了吗
    public String test(String str){
        if(str.length()<10){
            return str;
        }else{
            return str.subString(0,10);
        }
    }
      

  5.   

    String.format函数第一个参数是"正则表达式"?
    http://download.oracle.com/javase/6/docs/api/java/util/Formatter.html#syntax
    这么简单的需求, 顶楼上做法.
      

  6.   

    不好意思,是我搞错了,最后还是使用了三木运算和substring