[ジャワ]Javaで標準化された文字列 – Javaで文字列を標準化

Javaで文字列を標準化するために、, 私たちは、上部にある余分なスペースを削除する必要があります, エンド半ばの文字列.
まず、彼らは手トリムによって、最初と最後にスペースを削除します().
我々が持っているVD:

String str = "    nguyen     van     quan   7826    ";
str = str.trim();

その後

str = "nguyen     van     quan   7826"

次の私たちの仕事は、文字列の間に余分な空白をカットされます. これを行うには多くの方法があります, ここで私が提起しました 2 基本的な方法:
方法 1:

while (str.indexOf("  ") != -1) str = str.replaceAll("  "," ");

+/ s1.indexOf(S2) : この方法は、S1では、S2の位置を返します.
+/ s.replaceAll(s1は、s2で) : 方法は、S1、S2内のすべての文字列を置換します. しかし、唯一の文字列sの承認 1 時間. だから我々はすべてを置き換えることができますwhileループを結合する必要があります.
方法 2:

str = str.replaceAll("\\s+", " ");

イラストプログラム

class java_chuanhoaxau
{
	public static void main(String[] sgr)
	{
		String str = "    nguyen     van     quan   7826    ";
		str = str.trim();
		str = str.replaceAll("\\s+"," ");
		System.out.println(str);
	}
}

===更新===
我々は無意味なスペースを排除することにより、チェーンを標準化しているように. 今、私たちは最初の単語を大文字にします言葉など固有名詞を標準化します (ハノイ, ベトナムのグエン・ヴァン・泉や, …)
これを行うには、まず、通常、上記のように基礎を正規化. 次のステップは、各単語の最初の文字を大文字にされます. 私は、メソッド分割を使用します() 単語の配列に文字列を分離します. その後、String.valueOfを使用().toUperCase() 最後に各単語の最初の文字を大文字にする部分によって、それらの文字の残りの部分に接続されています(1).
Vậy là đã có mảng các từ viết hoa, tiếp theo là nối các từ lại với nhau và cách nhau 1 スペース.

package vietSource.net;

public class ChuanHoaXau {

	public String chuanHoa(String str) {
		str = str.trim();
		str = str.replaceAll("\\s+", " ");
		return str;
	}

	public String chuanHoaDanhTuRieng(String str) {
		str = chuanHoa(str);
		String temp[] = str.split(" ");
		str = ""; // ? ^-^
		for (int i = 0; i < temp.length; i++) {
			str += String.valueOf(temp[i].charAt(0)).toUpperCase() + temp[i].substring(1);
			if (i < temp.length - 1) // ? ^-^
				str += " ";
		}
		return str;
	}

	public static void main(String[] sgr) {
		String str = "    nguyen     van     quan   7826    ";
		ChuanHoaXau chx = new ChuanHoaXau();
		str = chx.chuanHoaDanhTuRieng(str);
		System.out.println(str);
	}
}