Böyle bir Dize var: "LODIXAL COMP 15"Dize bölme nasıl java sayıları içerir?
"LODIXAL COMP" ve "15" için nasıl bölüştürebilirim?
String a = "LODIXAL COMP 15";
String[] result = {"LODIXAL COMP" , "15"}
Böyle bir Dize var: "LODIXAL COMP 15"Dize bölme nasıl java sayıları içerir?
"LODIXAL COMP" ve "15" için nasıl bölüştürebilirim?
String a = "LODIXAL COMP 15";
String[] result = {"LODIXAL COMP" , "15"}
bunu kullanın positive lookahead tabanlı regex:
a.split(" (?=\\d+)");
TEST:
System.out.println(Arrays.toString(a.split(" (?=\\d+)")));
ÇIKIŞ:
[LODIXAL COMP, 15]
String a = "LODIXAL 12 3 COMP 15" ile ne var; Çıktı: [LODIXAL, 12, 3 COMP, 15] – smas
@smas Evet, bu regex dizginizle çalışmaz, bunun için a.split ("(? = \\ d + $)") 'a ihtiyacınız olacaktır. Cevabı düzenleyebilirim ancak OP'nin kodunda böyle bir dize olup olmadığını bilmiyoruz. – anubhava
gibi başka bir durum vardır: String a = "ACEDICON COMP 1 X 5 MG" ve "ACEDICON COMP 1" ve "X 5 MG" ye bölünmelidir. Nasıl yapabilirim? – michdraft
Lütfen okuyunuz (http://docs.oracle.com/javase/tutorial/essential/regex/) – mre
Bölünme yeri için kesin ölçüt nedir? İlk döndürülen dize hiç basamak içerebilir mi? @ Aix'in sorusuna yanıt veren – NPE
, size iyi bir yanıt oluşturmanıza yardımcı olacaktır. Ne almak istiyorsun: AAA BBB 2 3 CCC 4? [AAA BBB, 2, 3, CCC, 4]? – smas