private String requestDate="12/12/2012 02:02:23 AM";
文字列をトークン化したい
12122012_020223am_
stringTokenizer を使用してこれを達成する方法は?
よろしく、
requestDate = requestDate.replaceAll("/", "");
requestDate = requestDate.replaceAll(" ", "_");
requestDate = requestDate.replaceAll(":", "");
あなたに12122012_020223_AMを与えるでしょう
次に、requestDate = requestDate.toLowerCase()
12122012_020223_am が返されます
Date date = new SimpleDateFormat("MM/dd/yyyy hh:mm:ss a").parse(requestDate);
String output = new SimpleDateFormat("MMddyyyy_hhmmssa_").format(date);
output = output.toLowerCase();
StringTokenise が必要な場合は、このようなものが必要です
@Test
public void test() {
StringTokenizer stringTokenizer = new StringTokenizer("ab/c/d EF", "/");
StringBuilder b = new StringBuilder();
while (stringTokenizer.hasMoreTokens()) {
StringTokenizer stringTokenizer2 = new StringTokenizer(stringTokenizer.nextToken(), " ");
while (stringTokenizer2.hasMoreTokens()) {
b.append(stringTokenizer2.nextToken().toLowerCase());
b.append("_");
}
}
assertEquals("ab_c_d_ef_", b.toString());
}
StringTokenizerコンストラクターの 1 つは、文字列と区切り文字を取ります