From 728eb7620afe7d432dfd9beee7037eb687b98728 Mon Sep 17 00:00:00 2001 From: bernd32 Date: Fri, 13 Mar 2020 18:15:32 +0500 Subject: [PATCH] Fixed a long vowel bug --- .../bernd32/romajihenkan/RomajiHenkan.java | 20 ++++++------------- .../romajihenkan/ConvertToKanaTest.java | 5 +++++ 2 files changed, 11 insertions(+), 14 deletions(-) diff --git a/src/main/java/com/bernd32/romajihenkan/RomajiHenkan.java b/src/main/java/com/bernd32/romajihenkan/RomajiHenkan.java index e2dc953..47c623b 100644 --- a/src/main/java/com/bernd32/romajihenkan/RomajiHenkan.java +++ b/src/main/java/com/bernd32/romajihenkan/RomajiHenkan.java @@ -72,20 +72,12 @@ public class RomajiHenkan { private String replaceDashMarkerWithLongVowel(String string) { String resultStr = string; - for (int i = 1; i < string.length(); i++) { - char currentCharacter = string.charAt(i); - char previousCharacter = string.charAt(i - 1); - if (currentCharacter == '-' && isRomanVowel(previousCharacter)) { - switch(previousCharacter) { - case 'a': resultStr = string.replace("a", "ā"); - case 'i': resultStr = string.replace("i", "ī"); - case 'u': resultStr = string.replace("u", "ū"); - case 'e': resultStr = string.replace("e", "ē"); - case 'o': resultStr = string.replace("o", "ō"); - } - } - } - resultStr = resultStr.replace("-", ""); + resultStr = resultStr.replace("a-", "ā"); + resultStr = resultStr.replace("i-", "ī"); + resultStr = resultStr.replace("u-", "ū"); + resultStr = resultStr.replace("e-", "ē"); + resultStr = resultStr.replace("o-", "ō"); + return resultStr; } diff --git a/src/test/java/com/bernd32/romajihenkan/ConvertToKanaTest.java b/src/test/java/com/bernd32/romajihenkan/ConvertToKanaTest.java index 09d8234..1813ae5 100644 --- a/src/test/java/com/bernd32/romajihenkan/ConvertToKanaTest.java +++ b/src/test/java/com/bernd32/romajihenkan/ConvertToKanaTest.java @@ -39,5 +39,10 @@ public class ConvertToKanaTest { assertEquals("ratte", henkan.convert("ラッテ")); assertEquals("ko nakatta", henkan.convert("来なかった")); } + + @Test + public void test() { + System.out.println(henkan.convert("思い通りに行かなくて プツリ黙りこくる")); + } }