Apache Commons LangのStringUtilsについて
Apache Commons LangのStringUtilsは、文字列操作に便利なメソッドを提供するユーティリティクラスです。
以下にいくつかの一般的なメソッドとそれらの使用方法を示します。
- 文字列のnullまたは空のチェック:
String str = "Hello, world!";
if (StringUtils.isEmpty(str)) {
System.out.println("文字列はnullまたは空です。");
} else {
System.out.println("文字列はnullまたは空ではありません。");
}
- 文字列のトリム(前後の空白の削除):
String str = " Hello, world! ";
String trimmedStr = StringUtils.trim(str);
System.out.println(trimmedStr);
// "Hello, world!"
- 文字列の連結:
String[] array = {"Hello", "world"};
String joinedStr = StringUtils.join(array, ", ");
System.out.println(joinedStr);
// "Hello, world"
- 文字列の置換:
String str = "Hello, world!";
String replacedStr = StringUtils.replace(str, "world", "Java");
System.out.println(replacedStr);
// "Hello, Java!"
- 文字列の逆順:
String str = "Hello, world!";
String reversedStr = StringUtils.reverse(str);
System.out.println(reversedStr);
// "!dlrow ,olleH"
- 文字列の切り出し:
String str = "Hello, world!";
String substring = StringUtils.substring(str, 0, 5);
System.out.println(substring);
// "Hello"
- 文字列の先頭や末尾に指定された文字列が含まれているかをチェックする:
String str = "Hello, world!";
boolean startsWith = StringUtils.startsWith(str, "Hello");
boolean endsWith = StringUtils.endsWith(str, "world!");
System.out.println(startsWith);
// true
System.out.println(endsWith);
// true
- 文字列の大文字と小文字を無視して比較する:
String str1 = "hello";
String str2 = "HELLO";
boolean equalsIgnoreCase = StringUtils.equalsIgnoreCase(str1, str2);
System.out.println(equalsIgnoreCase);
// true
- 文字列の部分文字列を取得する:
String str = "Hello, world!";
String substring = StringUtils.substring(str, 7);
System.out.println(substring);
// "world!"
- 文字列を指定した文字でパディングする:
String str = "Hello";
String paddedStr = StringUtils.rightPad(str, 10, '-');
System.out.println(paddedStr);
// "Hello-----"
- 文字列を指定した文字列で区切り、配列に分割する:
String str = "Apple,Orange,Banana";
String[] splitArray = StringUtils.split(str, ",");
for (String element : splitArray) {
System.out.println(element);
}
// 出力:
// "Apple"
// "Orange"
// "Banana"
- 文字列の重複する文字を削除する:
String str = "aabbbccccdd";
String removedDuplicates = StringUtils.removeDuplicates(str);
System.out.println(removedDuplicates);
// "abcd"
- 文字列の先頭や末尾に指定された文字列が含まれている場合、その文字列を削除する:
String str = "##Hello, world!##";
String removedStart = StringUtils.removeStart(str, "##");
String removedEnd = StringUtils.removeEnd(removedStart, "##");
System.out.println(removedEnd);
// "Hello, world!"
- 文字列内の特定の文字を別の文字に置換する:
String str = "Hello, world!";
String replacedChars = StringUtils.replaceChars(str, "o", "0");
System.out.println(replacedChars);
// "Hell0, w0rld!"
- 文字列の先頭文字を大文字または小文字に変換する:
String str = "hello, world!";
String capitalized = StringUtils.capitalize(str);
String uncapitalized = StringUtils.uncapitalize(capitalized);
System.out.println(capitalized);
// "Hello, world!"
System.out.println(uncapitalized);
// "hello, world!"
- 文字列の指定された位置に別の文字列を挿入する:
String str = "Hello!";
String inserted = StringUtils.insert(str, 5, " world");
System.out.println(inserted);
// "Hello world!"
- 文字列が数値であるかをチェックする:
String str = "12345";
boolean isNumeric = StringUtils.isNumeric(str);
System.out.println(isNumeric);
// true
- 文字列の一部をマスクして非表示にする:
String str = "1234567890";
String maskedStr = StringUtils.overlay(str, "********", 3, 7);
System.out.println(maskedStr);
// "123********90"
ほかにもまだまだありますが、何かの参考になればと思います。
参考文献
https://commons.apache.org/proper/commons-lang/apidocs/org/apache/commons/lang3/StringUtils.html