import java.util.regex.*; import com.decontextualize.a2z.TextFilter; public class Shakespearator extends TextFilter { public static void main(String[] args) { new Shakespearator().run(); } public void eachLine(String line) { line = line.replaceAll("\\bI said\\b", "said I"); line = line.replaceAll("\\bhe said\\b", "said he"); line = line.replaceAll("\\bshe said\\b", "said she"); line = line.replaceAll("\\bon\\b", "upon"); line = line.replaceAll("\\bOn\\b", "Upon"); line = line.replaceAll("\\bmy", "mine"); line = line.replaceAll("\\bMy", "Mine"); line = line.replaceAll("\\byou were\\b", "thou wast"); line = line.replaceAll("\\bYou were", "Thou wast"); line = line.replaceAll("\\byour", "thine"); line = line.replaceAll("\\bYour", "Thine"); line = line.replaceAll("\\byou\\b", "thou"); line = line.replaceAll("\\bYou\\b", "Thou"); line = line.replaceAll("\\bhas\\b", "hast"); line = line.replaceAll("\\bHas\\b", "Hast"); line = line.replaceAll("\\bhad\\b", "hadst"); line = line.replaceAll("\\bHad\\b", "Hadst"); line = line.replaceAll("\\bhave\\b", "hath"); line = line.replaceAll("\\bHave\\b", "Hath"); line = line.replaceAll("\\bbefore\\b", "ere"); line = line.replaceAll("\\bBefore\\b", "Ere"); line = line.replaceAll("\\bindeed\\b", "forsooth"); line = line.replaceAll("\\bIndeed\\b", "Forsooth"); line = line.replaceAll("\\bcan\\b", "canst"); line = line.replaceAll("\\bCan\\b", "Canst"); line = line.replaceAll("\\bit is\\b", "'tis"); line = line.replaceAll("\\bIt is\\b", "'Tis"); line = line.replaceAll("\\bit's\\b", "'tis"); line = line.replaceAll("\\bIt's\\b", "'Tis"); line = line.replaceAll("\\bwhy\\b", "wherefore"); line = line.replaceAll("\\bWhy\\b", "Wherefore"); line = line.replaceAll("\\bwill\\b", "wilt"); line = line.replaceAll("\\bWill\\b", "Wilt"); line = line.replaceAll("uld\\b", "uldst"); line = line.replaceAll("\\bare\\b", "art"); line = line.replaceAll("\\bAre\\b", "Art"); line = line.replaceAll("\\bdo\\b", "dost"); line = line.replaceAll("\\bDo\\b", "Dost"); line = line.replaceAll("\\bdoes\\b", "doth"); line = line.replaceAll("\\bDoes\\b", "Doth"); line = line.replaceAll("lk\\b", "lkst"); line = line.replaceAll("\\bmay\\b", "mayst"); line = line.replaceAll("\\bMay\\b", "Mayst"); line = line.replaceAll("ght\\b", "ghteth"); line = line.replaceAll("are\\w?\\b", "arest"); line = line.replaceAll("ive\\w?\\b", "ivest"); line = line.replaceAll("ed\\b", "'d"); line = line.replaceAll("ow\\w?\\b", "oweth"); line = line.replaceAll("ake\\w?\\b", "aketh"); line = line.replaceAll("\\bbetween\\b", "betwixt"); line = line.replaceAll("\\bBetween\\b", "Betwixt"); line = line.replaceAll("ace\\w?\\b", "aceth"); line = line.replaceAll("ck\\w?\\b", "cketh"); line = line.replaceAll("ut\\w?\\b", "utteth"); line = line.replaceAll("ant\\w?\\b", "anst"); line = line.replaceAll("ange\\w?\\b", "angeth"); line = line.replaceAll("ose\\w?\\b", "oseth"); line = line.replaceAll("ear\\w?\\b", "earest"); line = line.replaceAll("ight\\w?\\b", "ighteth"); line = line.replaceAll("\\bI've\\b", "I hath"); line = line.replaceAll("\\bYou've\\b", "Thou hast"); line = line.replaceAll("\\byou've\\b", "thou hast"); line = line.replaceAll("\\bYou're\\b", "Thou art"); line = line.replaceAll("\\byou're\\b", "thou art"); println(line); } }