Skip to content

Instantly share code, notes, and snippets.

@musubu
Created July 11, 2012 07:58
Show Gist options
  • Save musubu/3088842 to your computer and use it in GitHub Desktop.
Save musubu/3088842 to your computer and use it in GitHub Desktop.
文字列の前後の全角スペースおよび半角スペースを除去
package utils;
/**
* @author Musubu Inc.
*/
public class StringUtils {
private static final String SPACE_CHAR_HALF = " ";
private static final String SPACE_CHAR_WIDE = " ";
/**
* 文字列の前後の全角スペース及び半角スペースを除去
*
* @param value
* @return String
*/
public static String trim(String value) {
return ltrim(rtrim(value));
}
/**
* 文字列の前の全角スペース及び半角スペースを除去
*
* @param value
* @return String
*/
public static String ltrim(String value) {
if (value == null || value.equals("")) return value;
int pos = 0;
for (int i = 0; i < value.length(); i++) {
String s = String.valueOf(value.charAt(i));
if (s != SPACE_CHAR_HALF && s != SPACE_CHAR_WIDE) break;
pos = i + 1;
}
if (pos > 0) {
return value.substring(pos);
} else {
return value;
}
}
/**
* 文字列の後の全角スペースおよび半角スペースを除去
*
* @param value
* @return String
*/
public static String rtrim(String value) {
if (value == null || value.equals("")) return value;
int pos = 0;
for (int i = value.length() - 1; i >= 0; i--) {
String s = String.valueOf(value.charAt(i));
if (s != SPACE_CHAR_HALF && s != SPACE_CHAR_WIDE) break;
pos = i;
}
if (pos > 0) {
return value.substring(0, pos);
} else {
return value;
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment