「Java 文字列の左右トリミング」の版間の差分
ナビゲーションに移動
検索に移動
(ページの作成:「==Java 文字列の左右トリミング== [Java] ===String.trim() のトリミング対象文字 ' 'より小さい文字コード に準拠=== public String trim(…」) |
|||
| 1行目: | 1行目: | ||
==Java 文字列の左右トリミング== | ==Java 文字列の左右トリミング== | ||
| − | [Java] | + | [[Java]] |
===String.trim() のトリミング対象文字 ' 'より小さい文字コード に準拠=== | ===String.trim() のトリミング対象文字 ' 'より小さい文字コード に準拠=== | ||
| 12行目: | 12行目: | ||
int pos = 0; | int pos = 0; | ||
| − | for (int i=0; i | + | for (int i=0; i<value.length(); i++) { |
char c = value.charAt(i); | char c = value.charAt(i); | ||
| − | if (c | + | if (c <= ' ') { |
pos++; | pos++; | ||
} else { | } else { | ||
| 20行目: | 20行目: | ||
} | } | ||
} | } | ||
| − | if (pos | + | if (pos > 0) { |
value = value.substring(pos); | value = value.substring(pos); | ||
} | } | ||
| 28行目: | 28行目: | ||
int pos = 0; | int pos = 0; | ||
| − | for (int i=value.length()-1; i | + | for (int i=value.length()-1; i>=0; i--) { |
char c = value.charAt(i); | char c = value.charAt(i); | ||
| − | if (c | + | if (c <= ' ') { |
pos = i; | pos = i; | ||
} else { | } else { | ||
| 36行目: | 36行目: | ||
} | } | ||
} | } | ||
| − | if (pos | + | if (pos >= 0 && pos < value.length()) { |
value = value.substring(0, pos); | value = value.substring(0, pos); | ||
} | } | ||
2020年2月15日 (土) 08:03時点における版
Java 文字列の左右トリミング
String.trim() のトリミング対象文字 ' 'より小さい文字コード に準拠
public String trim(String value, String type) {
if (value != null) {
if ("both".equals(type)) {
value = value.trim();
} else {
if ("left".equals(type)) {
int pos = 0;
for (int i=0; i<value.length(); i++) {
char c = value.charAt(i);
if (c <= ' ') {
pos++;
} else {
break;
}
}
if (pos > 0) {
value = value.substring(pos);
}
} else if
("right".equals(type)) {
int pos = 0;
for (int i=value.length()-1; i>=0; i--) {
char c = value.charAt(i);
if (c <= ' ') {
pos = i;
} else {
break;
}
}
if (pos >= 0 && pos < value.length()) {
value = value.substring(0, pos);
}
}
}
}
return value;
}
© 2006 矢木浩人