public class Find { public static void main(String[] args) { String s = "Dette er en String til \"test\"."; int ix1 = s.indexOf('"'); int ix2 = s.indexOf('"', ix1 + 1); String del = s.substring(ix1 + 1, ix2); System.out.println(del); Pattern p = Pattern.compile("(?:\")(.*)(?:\")"); Matcher m = p.matcher(s); while (m.find()) { System.out.println(m.group(1)); } } }
Nu er ikke jeg helt kendt med StringTokenizer, men betyder ikke dette
"StringTokenizer is a legacy class that is retained for compatibility reasons although its use is discouraged in new code." (fra Javadoc for StringTokenizer)
at man hellere skal vælge en anden metode end StringTokenizer?
Jeg håber at de har fået gjordt noget ved regex performance fordi String split er 4 gange langsommere end brug af StringTokenizer i 1.4.1 (Win32).
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.