Sto avendo problemi nel dividere la seguente stringa.
String str = "eat big mac .at East MacDonald .from onwards";
Voglio che il risultato sia
[ eat big mac, .at, East MacDonald, .from, onwards]
Non posso dividere per spazio o punto, c'è un modo in cui posso dividerlo?
risposte:
3 per risposta № 1Puoi avvolgere le tue parole chiave usando un token speciale (o delimitatore) e quindi dividere usando questo delimitatore:
String str = "eat big mac .at East MacDonald .from onwards";
String[] arr = str.replaceAll("(\.\w+)", "DELIMITER$1DELIMITER").split("DELIMITER");
Questo produce output:
[eat big mac , .at, East MacDonald , .from, onwards]
0 per risposta № 2
Puoi sempre usare il metodo split () per ogni stringa che usi.
String str = "eat big mac .at East MacDonald .from onwards";
String[] spaceDelimitedStr = str.split(" ");
String[] dotDelimitedStr = str.split("\.");
String[] commaDelimitedStr = str.split(",");
e poiché l'input della funzione di divisione è un'espressione regolare, puoi fornire tutti i tipi di delimitazioni
Per il risultato che stai cercando sarà molto difficile ottenere quello che vuoi, posso chiederti perché hai bisogno che questo sia così com'è?