去除字符串的首尾空格(全角,半角)

在获取到一个字符串之后,可能需要将字符串的首尾空格删除。

首先想到的可能是 trim() 方法

使用trim的话,的确可以将字符串的首尾空格删除,但是这只限于是“半角空格”,如果输入了“全角的空格”,使用trim()是没有办法去除的

从网上找到一个方法,使用正则表达式来处理,很好用,记录下来

package org.ygy.simple.demo;

public class CommonUtil {
	
	/**
	 * 去除字符串首尾空格(包括半角,全角的空格)
	 * @param source 原字符串
	 * @return 去除空格的字符串
	 */
	public String trimSpace(String source) {
		return source == null ? source : source.replaceAll("^[\\s ]*|[\\s ]*$", "");
	}
}

简单测试一下:

package org.ygy.simple.demo;

import static org.junit.Assert.*;

import org.junit.Before;
import org.junit.Test;

public class TestTrimSpace {
	private CommonUtil commonUtil = null;
	
	@Before
	public void before() {
		commonUtil = new CommonUtil();
	}
	
	@Test
	public void testTrimSpace() {
		assertEquals("hello world" , commonUtil.trimSpace(" hello world   "));
		assertEquals("上海" , commonUtil.trimSpace(" 上海  "));
		assertEquals("浦  东" , commonUtil.trimSpace(" 浦  东  "));
	}
}


你可能感兴趣的:(Java,SE)