]> gitweb.fperrin.net Git - DictionaryPC.git/commitdiff
Avoid replaceAll.
authorReimar Döffinger <Reimar.Doeffinger@gmx.de>
Sun, 13 Dec 2015 00:07:40 +0000 (01:07 +0100)
committerReimar Döffinger <Reimar.Doeffinger@gmx.de>
Sun, 13 Dec 2015 00:07:40 +0000 (01:07 +0100)
It uses regexp and is horribly slow, so use replace
where it works just as well.

src/com/hughes/android/dictionary/engine/CheckDictionariesMain.java
src/com/hughes/android/dictionary/parser/WikiTokenizer.java
src/com/hughes/android/dictionary/parser/wiktionary/EnForeignParser.java
src/com/hughes/android/dictionary/parser/wiktionary/EnToTranslationParser.java

index 4d0b2786c6ad50117a2600b3dc520eae52d3cdde..6ad8fb298cdba440e80bcec259e51511bb7494f2 100644 (file)
@@ -82,7 +82,7 @@ public class CheckDictionariesMain {
     }
     
     Collections.sort(dictNames);
-    System.out.println(dictNames.toString().replaceAll(",", "  *"));
+    System.out.println(dictNames.toString().replace(",", "  *"));
     
     dictionaryInfoOut.close();
   }
index 411baafa1ecdf53a9713b6696cba027c30dcf8ab..165458e3feeb257d566af3fb65252e6375cecc33 100644 (file)
@@ -125,8 +125,8 @@ public final class WikiTokenizer {
   }
 
   public WikiTokenizer(String wikiText, final boolean isNewline) {
-    wikiText = wikiText.replaceAll("\u2028", "\n");
-    wikiText = wikiText.replaceAll("\u0085", "\n");
+    wikiText = wikiText.replace('\u2028', '\n');
+    wikiText = wikiText.replace('\u0085', '\n');
     this.wikiText = wikiText;
     this.matcher = wikiTokenEvent.matcher(wikiText);
     justReturnedNewline = isNewline;
@@ -512,7 +512,7 @@ public final class WikiTokenizer {
               return safeIndexOf(wikiText, start, "\n", "\n");
             }
           } else {
-            errors.add("Pop too many error: " + wikiText.substring(start).replaceAll("\n", "\\\\n"));
+            errors.add("Pop too many error: " + wikiText.substring(start).replace("\n", "\\\\n"));
             // If we were looking for a newline
             return safeIndexOf(wikiText, start, "\n", "\n");
           }
@@ -581,7 +581,7 @@ public final class WikiTokenizer {
     while (s.endsWith("\n")) {
       s = s.substring(0, s.length() - 1);
     }
-    return s.replaceAll("\n", " ");
+    return s.replace('\n', ' ');
   }
 
   static int safeIndexOf(final String s, final int start, final String target, final String backup) {
index 5ed0bc22be71b2585a3eb0e7ecc6c25d7168fea0..c4748e6e685d6be0f56a82fa2cde56c743a616ec 100644 (file)
@@ -40,7 +40,7 @@ public final class EnForeignParser extends EnParser {
       if (isIgnorableTitle(title)) {
         return;
       }
-      final String lang = heading.replaceAll("=", "").trim();
+      final String lang = heading.replace("=", "").trim();
       if (!langPattern.matcher(lang).find()){
         return;
       }
@@ -322,4 +322,4 @@ public final class EnForeignParser extends EnParser {
     }
 
 
-  }  // ForeignParser
\ No newline at end of file
+  }  // ForeignParser
index c1280558b10e62795be4c1753fd5d351b04d849b..d37c0e36f2a61cc858fbc2e356f6959f5b30abc1 100644 (file)
@@ -37,7 +37,7 @@ public final class EnToTranslationParser extends EnParser {
       if (isIgnorableTitle(title)) {
         return;
       }
-      heading = heading.replaceAll("=", "").trim(); 
+      heading = heading.replace("=", "").trim();
       if (!heading.contains("English")) {
         return;
       }
@@ -228,4 +228,4 @@ public final class EnToTranslationParser extends EnParser {
         incrementCount("WARNING: Duplicate pair" );
       }
     }
-  }  // EnToTranslationParser
\ No newline at end of file
+  }  // EnToTranslationParser