Tôi có chuỗi như sau: "LODIXAL COMP 15"cách tách chuỗi chứa số trong java?
Làm cách nào để chia nhỏ thành "LODIXAL COMP" và "15"?
String a = "LODIXAL COMP 15";
String[] result = {"LODIXAL COMP" , "15"}
Tôi có chuỗi như sau: "LODIXAL COMP 15"cách tách chuỗi chứa số trong java?
Làm cách nào để chia nhỏ thành "LODIXAL COMP" và "15"?
String a = "LODIXAL COMP 15";
String[] result = {"LODIXAL COMP" , "15"}
Sử dụng này regex positive lookahead dựa trên:
a.split(" (?=\\d+)");
KIỂM TRA:
System.out.println(Arrays.toString(a.split(" (?=\\d+)")));
OUTPUT:
[LODIXAL COMP, 15]
Điều gì với String a = "LODIXAL 12 3 COMP 15"; Đầu ra: [LODIXAL, 12, 3 COMP, 15] – smas
@smas Có regex này sẽ không hoạt động với chuỗi của bạn, bạn sẽ cần 'a.split (" (? = \\ d + $) ")' cho điều đó. Tôi có thể chỉnh sửa câu trả lời nhưng chúng tôi không biết liệu OP có thể có chuỗi như vậy trong mã của họ hay không. – anubhava
có tình huống khác như thế này: String a = "ACEDICON COMP 1 X 5 MG" và nó phải được chia thành "ACEDICON COMP 1" và "X 5 MG". Tôi có thể làm như thế nào? – michdraft
Vui lòng đọc [this] (http://docs.oracle.com/javase/tutorial/essential/regex/) – mre
Tiêu chí chính xác cho vị trí phân chia là gì? Chuỗi trả về đầu tiên có thể chứa chữ số không? – NPE
trả lời câu hỏi của @ aix sẽ giúp tạo câu trả lời hay cho bạn. Những gì bạn muốn nhận được cho: AAA BBB 2 3 CCC 4? [AAA BBB, 2, 3, CCC, 4]? – smas