import java.util.*; public class Orddeling { private final static String kons = "bcdefghjklmnpqrstvxzABCDFGHJKLMNPQRSTVXZ"; private final static String vok = "aeiouyæøåAEIOUYÆØÅ"; private static LineReader read = new LineReader(System.in); public Orddeling() { } public String delOrd(String s) { boolean førstKørt = true; String deltOrd = new String(""); String konsonanter = new String(""); String tilfOrd = new String(""); int half; int tæller = 1; String curToken = new String(); StringTokenizer st = new StringTokenizer(s, vok, true); char tegn; String curToken2 = new String(); while(st.hasMoreTokens()) { curToken = st.nextToken(); tegn = curToken.charAt(0); if (!erVokal(tegn)) { konsonanter = curToken; } if(!st.hasMoreTokens() && !erVokal(tegn)){ deltOrd+=curToken; } if(erVokal(tegn)&&!førstKørt) { StringTokenizer st2 = new StringTokenizer(konsonanter,kons,true); half = (st2.countTokens())/2; if(st2.countTokens()==0) {tilfOrd+="-"; } if(st2.countTokens()==1) {tilfOrd+="-"+konsonanter; } if(st2.countTokens()>1) { while(st2.hasMoreTokens()) { if(tæller==half) { tilfOrd+=st2.nextToken()+"-"; } else { tilfOrd+=st2.nextToken(); } tæller++; } } deltOrd += tilfOrd + curToken; tæller = 1; half = 0; konsonanter = ""; tilfOrd=""; } if(erVokal(tegn)&&førstKørt) { deltOrd = konsonanter + curToken; førstKørt = false; konsonanter = ""; } } return deltOrd; } public static boolean erVokal(char c) { if (c == 'a') {return true;} if (c == 'e') {return true;} if (c == 'i') {return true;} if (c == 'o') {return true;} if (c == 'u') {return true;} if (c == 'y') {return true;} if (c == 'æ') {return true;} if (c == 'ø') {return true;} if (c == 'å') {return true;} if (c == 'A') {return true;} if (c == 'E') {return true;} if (c == 'I') {return true;} if (c == 'O') {return true;} if (c == 'U') {return true;} if (c == 'Æ') {return true;} if (c == 'Ø') {return true;} if (c == 'Å') {return true;} return false; } } ** new file ** import java.util.*; public class DelSaetning { public static void main(String[] args) { Orddeling del = new Orddeling(); LineReader read = new LineReader(System.in); String sn = read.readString("Skriv en sætning!"); StringTokenizer st = new StringTokenizer(sn," ,.!?;",true); String result = ""; String temp; while(st.hasMoreTokens()) { temp = st.nextToken(); if(temp!=" "&&temp!=","&&temp!="."&&temp!="!"&&temp!="?"&&temp!=";") { result += del.delOrd(temp); } else result += temp; } System.out.println(result); } }