codewars035: Word a10n (abbreviation) 單詞縮略

Sourcejava

package codewars;
//https://www.codewars.com/kata/5375f921003bf62192000746/train/java
import java.util.regex.*;
pblic class Abbreviator{
    StringBuilder rslt = new StringBuilder(string);
    String regex = "[A-Za-z]{4,}";
    Pattern p = Pattern.compile(regex);
    Matcher m = p.matcher(string);
    while(m.find()){
        final String word = m.group();
        int start = m.start();
        int end = m.end();
        StringBuilder sb = new StringBuilder(word);
        int len = sb.length();
        sb.delete(1, len - 1);
        sb.insert(1, String.valueOf(len - 2));
        rslt.delete(start,end);
        rslt.insert(start,sb.toString());
        m = p.matcher(rslt.toString());
    }  
    return rslt.toString();  
}
相關文章
相關標籤/搜索