Bhavin S.:
Uso por primera vez que la declaración expresiones regulares.
Tengo declaración de expresiones regulares de Java, que se dividió por cadena patrón con la lista de algunos personajes.
String line = "F01T8B02S00003H04Z05C0.12500";
Pattern pattern = Pattern.compile("([BCFHSTZ])");
String[] commands = pattern.split(line);
for (String command : commands) {
System.out.print(command);
}
salida del código anterior es como (018020000304050,12500)
En realidad quiero salida como esta, ( "F", "01", "T", "8", "B", "02", "S", "00003", "H", "04", "Z ", "05", "C", "0,12500").
Medios de salida deseada es de carácter contiene el patrón y el valor de división ambos.
Puede usted por favor me sugieren?
Kevin Cruijssen:
Puede utilizar una cadena # dividida en [A-Z]
la que mantiene el delimitador como elemento separado :
String line = "F01T8B02S00003H04Z05C0.12500";
String[] result = line.split("((?<=[A-Z])|(?=[A-Z]))");
System.out.println(java.util.Arrays.toString(result));
Lo que resultará en la cadena de matriz:
[F, 01, T, 8, B, 02, S, 00003, H, 04, Z, 05, C, 0.12500]