LoginSignup
1
6

More than 5 years have passed since last update.

文字列操作あれこれ-Java編-

Posted at

文字列操作あれこれ-Java編-

とりあえず備忘録としてまとめています。
実践的ではないかもしれません。
とりあえずJavaから書きます。
変なこと書いてたら指摘してください。

文字列結合

Sample1.java
/**文字リテラルや定数の結合**/
String final CONSTSTR = "A";
String strA = "A" + "B" + CONSTSTR; // リテラルや定数は+で結合すると良い
System.out.println(strA); // ABA

/**その他の結合**/
String strB = "B";
String strC = "C";
StringBuilder buff = new StringBuilder();
buff.append(strA);
buff.append(strB);
buff.append(strC);

この記事が詳しいです
https://qiita.com/yoshi389111/items/67354ba33f9271ef2c68

文字列を数字に変換

Sample2.java
/**普通に文字列から数字に変換**/
String strA = "1";
int numA = Integer.parseInt(strA);

/**例外処理を考慮し、とりあえず例外時は0を返却**/
String hoge = "hoge";
try {
    int numB = Integer.parseInt(hoge);
} catch (NumberFormatException e) {
    return 0;
}

文字列を切り出す(範囲指定)

Sample3.java
/**切り出す始点と終点を指定して切り出し**/
String strA = "12345";
strA.substring(0,3); // 123
strA.substring(1,3); // 23

/**切り出す始点のみを指定して切り出し**/
strA.substring(2); // 345

文字列を一文字だけ切り出す

Sample4.java
/**一文字だけChar型で切り出し**/
String strA = "12345";
Char charA = strA.charAt(3); // 4

前後の空白を削除する

Sample5.java
/**前後の空白(半角のみ)を削除**/
String strA = " ABC ";
strA.trim(); // ABC

文字列を置換する

Sample6.java
String strA = "ABCABCABC";
/**全てのAをXに置き換える**/
strA.replace('A', 'X'); // XBCXBCXBC
/**一番最初のAのみXに置き換える**/
strA.replaceFirst('A', 'X'); // XBCABCABC

文字列の完全一致判定

Sample7.java
String strA = "ABC";
String strB = null;

/**完全一致しているか判定**/
"ABC".equals(strA); // true
"CBA".equals(strA); // false
/**判定する文字列がnullの場合はfalse判定**/
"ABC".equals(strB); // false

大文字小文字を無視して文字列の一致判定

Sample8.java
String strA = "ABC";
String strB = "xyz";

/**大文字小文字を無視して一致しているか判定**/
"abc".equalsIgnoreCase(strA); // true
"XYZ".equalsIgnoreCase(strB); // true

文字列を前方一致か後方一致か判定

Sample9.java
String strA = "ABCDE";

/**前方一致、あるいは後方一致しているか判定**/
strA.startsWith("AB"); // true
strA.endWith("DE"); // true

文字列が空文字か判定

Sample10.java
String strA = "";

/**文字列が空文字か判定**/
strA.isEmpty(); // true

特定の文字列が含まれているか判定

Sample11.java
String strA = "ABCDEFGHIJ";

/**特定文字列が含まれているか判定**/
strA.contains("DE"); // true
1
6
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
6