Name: rmT116609 Date: 06/10/2004
FULL PRODUCT VERSION :
java version "1.4.2_04"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.4.2_04-b05)
Java HotSpot(TM) Client VM (build 1.4.2_04-b05, mixed mode)
java version "1.5.0-beta2"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0-beta2-b51)
Java HotSpot(TM) Client VM (build 1.5.0-beta2-b51, mixed mode, sharing)
ADDITIONAL OS VERSION INFORMATION :
Microsoft Windows 2000 [Version 5.00.2195]
Microsoft Windows XP [Version 5.1.2600]
A DESCRIPTION OF THE PROBLEM :
String.split method on the java.lang.String class failed to worked correctly for the | delimiter.
STEPS TO FOLLOW TO REPRODUCE THE PROBLEM :
Split a string by using a pipe | delimiter.
EXPECTED VERSUS ACTUAL BEHAVIOR :
EXPECTED -
one
two
ACTUAL -
o
n
e
|
t
w
o
REPRODUCIBILITY :
This bug can be reproduced always.
---------- BEGIN SOURCE ----------
public class Test {
public static void main(String[] args) {
String test = "one|two";
String[] splits = test.split("|");
for(int i = 0; i < splits.length; i++) {
System.out.println(splits[i]);
}
}
}
---------- END SOURCE ----------
CUSTOMER SUBMITTED WORKAROUND :
import java.util.StringTokenizer;
public class Test {
public static void main(String[] args) {
String test = "one|two";
StringTokenizer stok = new StringTokenizer(test, "|");
while(stok.hasMoreTokens()) {
System.out.println(stok.nextToken());
}
}
}
(Incident Review ID: 276898)
======================================================================
- duplicates
-
JDK-6253831 split(String regex) doesn't work with regex="|" (or = "\u007c")
-
- Closed
-
- relates to
-
JDK-6230758 String.split() method does not work for "." -- similar to bug 5061438
-
- Closed
-
-
JDK-6254566 (spec str) String.split() should explain string quoting for literal instead of regex behavior
-
- Open
-