私たちが一般的に使用するtrim()メソッドの主な機能は、文字列の先頭と末尾のスペースを削除することです。ただし、私の個人的な実際の経験によれば、trim() メソッドは一部のスペースまたは空白文字 (全角スペースの場合は半角スペースなど) のみを削除でき、trim() メソッドはそれらを削除できないことがわかりました。したがって、現時点では、通常のルールを使用して、文字列の先頭と末尾のスペース、空白文字、改行またはタブ文字、改行文字などを削除する必要があります。
public static void main(String[] args){ String keyword = " 空格符与制表符等 "; keyword = keyword.replaceAll("^[ *| *| *|//s*]*", "").replaceAll("[ *| *| *|//s*]*$", ""); System.out.println("keyword : "+keyword); }
これを説明するオンラインで見つけた情報もあります。方法: まず、trim() このメソッドを逆コンパイルすると、次の結果が得られます:
public string Trim() { return this.TrimHelper(WhitespaceChars, 2); }
TrimHelper このメソッドを逆コンパイルすると、次の結果が得られます:
private string TrimHelper(char[] trimChars, int trimType) { int num = this.Length - 1; int startIndex = 0; if (trimType != 1) { startIndex = 0; while (startIndex < this.Length) { int index = 0; char ch = this[startIndex]; index = 0; while (index < trimChars.Length) { if (trimChars[index] == ch) { break; } index++; } if (index == trimChars.Length) { break; } startIndex++; } } if (trimType != 0) { num = this.Length - 1; while (num >= startIndex) { int num4 = 0; char ch2 = this[num]; num4 = 0; while (num4 < trimChars.Length) { if (trimChars[num4] == ch2) { break; } num4++; } if (num4 == trimChars.Length) { break; } num--; } } int length = (num - startIndex) + 1; if (length == this.Length) { return this; } if (length == 0) { return Empty; } return this.InternalSubString(startIndex, length, false); }
TrimHelper には 2 つのパラメータがあります。最初のパラメータの TrimChars は、文字列の両端から削除される文字の配列です。文字列。2 番目のパラメータrimTypeは、Trim()を識別する型です。 TrimType には 3 つの値があります。0 が渡された場合は文字列の先頭の空白文字が削除され、1 が渡された場合は文字列の末尾の空白文字が削除されます。が渡されると、文字列の両端の空白文字が削除されます。最終的な結論は、String.Trim() メソッドはスペース文字だけでなく文字列の両端を削除します。合計 25 文字を削除できます: ('/t'、'/n'、'/v'、 ' /f'、'/r'、' '、'/x0085'、'/x00a0'、' '、' '、' '、' '、' '、' '、' '、' '、' '、 ' '、' '、' '、'?'、'/u2028'、'/u2029'、' '、'?')。
Trim() に似たメソッドが他に 2 つあります。文字列の先頭の空白文字を削除する TrimStart() と、文字列の末尾の空白文字を削除する TrimEnd() です。
文字列の両端の文字を削除したい場合は、Trim のオーバーロードされたメソッド String.Trim(Char[]) を使用できます。このメソッドのソースコードは次のとおりです:
public string Trim(params char[] trimChars) { if ((trimChars == null) || (trimChars.Length == 0)) { trimChars = WhitespaceChars; } return this.TrimHelper(trimChars, 2); }
注意する必要があるのは次のとおりです。 space!= 空白文字、と考えてください。 スペースを削除するには、Trim(' ') を使用します。
【関連おすすめ】
2. JavaのString.trim()メソッドの例の詳細な説明
4. 5.文字列から先頭と末尾のスペースと特殊文字を削除するPHP関数trim()
以上がJava の TrimHelper メソッドの例を共有するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。