[Java的]在Java中的字符串标准化 – 规范字符串中的java

到规范化串中的Java, 我们需要在顶部删除多余的空格, 端和中间弦.
首先,我们手动删除开头的空间和方法修剪终点().
例如,我们有:

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) : 方法返回S2在S1的位置.
+/ s.replaceAll(S1,S2) : 方法替换所有字符串S1到S2以s. 只是浏览字符串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).
因此具有从大写的数组, 后跟单词链接到一起以及分开 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);
	}
}