/* * IxNay : Convert text into IxNay (Pig Latin). * * Parke Godfrey 2009-11-16 */ import java.io.PrintStream; import java.util.Scanner; public class IxNayC { public static void main(String[] args) { PrintStream output = System.out; Scanner input = new Scanner(System.in); final String AY = "ay"; final String YAY = "Yay"; final String SENTINEL = "@"; output.println("Enter a sentence:"); while (input.hasNext()) { String line = input.nextLine(); Scanner gaps = new Scanner(SENTINEL + line); gaps.useDelimiter("[a-zA-Z]+"); Scanner words = new Scanner(line); words.useDelimiter("[^a-zA-Z]+"); output.print(gaps.next().substring(1)); while (gaps.hasNext() || words.hasNext()) { if (words.hasNext()) { String word = words.next(); String leader = word.replaceAll("[aeiouAEIOU].*$", ""); String rest = word.substring(leader.length()); if (leader.length() == 0) { output.print(rest + YAY); } else { output.print(rest + leader.toUpperCase() + AY); } } if (gaps.hasNext()) output.print(gaps.next()); } output.println(""); output.println("Enter a sentence:"); } output.println("Done."); } }