在Java中,可以使用replaceAll()
方法與正則表達式來實現大小寫轉換。以下是一個示例代碼:
public class Main {
public static void main(String[] args) {
String input = "Hello World";
String output = input.replaceAll("(?i)[a-z]", new Replacement());
System.out.println(output);
}
}
class Replacement {
public String replacer(MatchResult match) {
String group = match.group();
if (Character.isUpperCase(group.charAt(0))) {
return group.toLowerCase();
} else {
return group.toUpperCase();
}
}
}
在上面的示例中,input
字符串被轉換為全部大寫或全部小寫,取決于輸入字符串的初始大小寫。(?i)
是一個正則表達式的標志,表示匹配時忽略大小寫。[a-z]
表示匹配任何小寫字母。Replacement
類定義了一個replacer
方法,用于根據匹配結果來決定要返回的替換文本。如果匹配的字符是大寫字母,則返回相應的小寫字母;如果是小寫字母,則返回相應的大寫字母。
該代碼的輸出將是hELLO wORLD
,即原始字符串中的大寫字母變為小寫字母,小寫字母變為大寫字母。