Java如何將每個單詞的第一個字元轉為大寫?

2019-10-16 22:25:41

在Java程式設計中,如何將每個單詞的第一個字元轉為大寫?

以下範例演示如何使用toUpperCase()appendTail()方法將字串中每個單詞的第一個字母轉換為大寫字母。

package com.yiibai;

import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class MakeFirstLetterUppercase {
    public static void main(String[] args) {
        String str = "this is a java test String upcase: 123string";
        System.out.println(str);
        StringBuffer stringbf = new StringBuffer();
        Matcher m = Pattern.compile("([a-z])([a-z]*)", Pattern.CASE_INSENSITIVE).matcher(str);

        while (m.find()) {
            m.appendReplacement(stringbf, m.group(1).toUpperCase() + m.group(2).toLowerCase());
        }
        System.out.println(m.appendTail(stringbf).toString());
    }
}

上述程式碼範例將產生以下結果 -

this is a java test String upcase: 123string
This Is A Java Test String Upcase: 123String

註:"123string"也會被轉換為大寫形式:"123String"