Java 去除字符串前后指定的字符


一、去除字符串中的中文字符。

/**
     * 去除字符串中的中文字符
     * 
     * 示例:brandName值為: 中國ABCD88深圳
     * 
     * 返回: ABCD88
     * 
     * @param brandName
     * @return
     */
    private String getLongLoadPermit1(String brandName) {
        String reg = "[\u4E00-\u9FA5]";
        Pattern pat = Pattern.compile(reg);
        Matcher mat = pat.matcher(brandName);
        String longLoadPermit = mat.replaceAll("");
        return longLoadPermit;
    }

二、去除字符串中的中文,並去除得到字符串之后前后的字符。

    /**
     * 去除字符串中的中文,並去除得到字符串之后前后的字符
     * 
     * 示例:brandName值為 : 中國-ABC-D88-深圳
     * 
     * 返回:ABC-D88
     * 
     * @param brandName
     * @return
     */
    private String getLongLoadPermit(String brandName) {
        String reg = "[\u4E00-\u9FA5]";
        Pattern pat = Pattern.compile(reg);
        Matcher mat = pat.matcher("");
        String longLoadPermit = mat.replaceAll("");
        
        //用於檢測字符串是否以指定的前綴開始。
        if (longLoadPermit.startsWith("-")) {
            longLoadPermit = longLoadPermit.replaceFirst("-", "");
        }
        
        //用於檢測字符串是否以指定的后綴結束。
        if (longLoadPermit.endsWith("-")) {
            longLoadPermit = longLoadPermit.substring(0,
                    longLoadPermit.length() - 1);
        }
        return longLoadPermit;
    }

三、去除字符串前后,指定的字符。

/***
     * 去除字符串前后,指定的字符
     * 
     * 示例 世界-中國-ABC-D88-深圳-福田
     * 
     * 返回 ABC-D88
     * 
     * @param str
     * @param beTrim
     * @return
     */
    public String trimStringWith(String str, char beTrim) {
        int st = 0;
        int len = str.length();
        char[] val = str.toCharArray();
        char sbeTrim = beTrim;
        while ((st < len) && (val[st] <= sbeTrim)) {
            st++;
        }
        while ((st < len) && (val[len - 1] <= sbeTrim)) {
            len--;
        }
        return ((st > 0) || (len < str.length())) ? str.substring(st, len) : str;
    }

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM