Strings 初級

strip()、stripLeading()、stripTrailing()でUnicode対応のトリミングを行う。

✕ Java 8
// trim() only removes ASCII whitespace
// (chars <= U+0020)
String clean = str.trim();
✓ Java 11+
// strip() removes all Unicode whitespace
String clean = str.strip();
String left  = str.stripLeading();
String right = str.stripTrailing();
このコードに問題がありますか? お知らせください。
🌐

Unicode対応

あらゆるスクリプトのすべての空白文字を処理できます。

🎯

方向指定

stripLeading()とstripTrailing()で片側のみのトリミングが可能です。

🛡️

バグを減らせる

多言語テキストで空白が残ってしまうという意図しないバグがなくなります。

旧来のアプローチ
trim()
モダンなアプローチ
strip()
JDKバージョン
11
難易度
初級
String.strip() vs trim()
利用可能

JDK 11(2018年9月)以降、広く利用可能

trim()はU+0020以下の文字(ASCII制御文字とスペース)しか除去しません。strip()はCharacter.isWhitespace()を使用するため、ノーブレークスペース、全角スペースなどUnicodeのあらゆる空白に対応します。

共有 𝕏 🦋 in