Revision: 6245
          
http://languagetool.svn.sourceforge.net/languagetool/?rev=6245&view=rev
Author:   dominikoeo
Date:     2012-01-14 18:36:42 +0000 (Sat, 14 Jan 2012)
Log Message:
-----------
[uk] speed up startup time of Ukrainian language
     when loading MySpell dictionary. On my laptop,
     change speeds up startup time by ~ 0.25 seconds

Modified Paths:
--------------
    
trunk/JLanguageTool/src/java/org/languagetool/tagging/uk/UkrainianMyspellTagger.java

Modified: 
trunk/JLanguageTool/src/java/org/languagetool/tagging/uk/UkrainianMyspellTagger.java
===================================================================
--- 
trunk/JLanguageTool/src/java/org/languagetool/tagging/uk/UkrainianMyspellTagger.java
        2012-01-14 17:45:38 UTC (rev 6244)
+++ 
trunk/JLanguageTool/src/java/org/languagetool/tagging/uk/UkrainianMyspellTagger.java
        2012-01-14 18:36:42 UTC (rev 6245)
@@ -26,6 +26,8 @@
 import java.util.ArrayList;
 import java.util.HashMap;
 import java.util.List;
+import java.util.regex.Matcher;
+import java.util.regex.Pattern;
 
 import org.languagetool.AnalyzedToken;
 import org.languagetool.AnalyzedTokenReadings;
@@ -68,6 +70,11 @@
       final BufferedReader input = new BufferedReader(new InputStreamReader(
           resourceFile, Charset.forName("UTF-8")));
 
+      final Pattern pattern1 = Pattern.compile("[abcdefghijklmnop]+");
+      final Pattern pattern2 = Pattern.compile("[ABCDEFGHIJKLMN]+");
+      final Pattern pattern3 = Pattern.compile("[BDFHJLN]+");
+      final Pattern pattern4 = Pattern.compile("[UV]+");
+
       String line;
       while ((line = input.readLine()) != null) {
         line = line.trim();
@@ -80,17 +87,17 @@
           final String flags = wrd[1];
           final List<String> posTags = new ArrayList<String>();
 
-          if (flags.matches("[abcdefghijklmnop]+")) {
+          if (pattern1.matcher(flags).matches()) {
             posTags.add(IPOSTag.TAG_NOUN);
             if (flags.equals("b")) {
               posTags.add(IPOSTag.TAG_PLURAL);
             }
-          } else if (flags.matches("[ABCDEFGHIJKLMN]+")) {
+          } else if (pattern2.matcher(flags).matches()) {
             posTags.add(IPOSTag.TAG_VERB);
-            if (flags.matches("^[BDFHJLN]+")) {
+            if (pattern3.matcher(flags).matches()) {
               posTags.add(IPOSTag.TAG_REFL);
             }
-          } else if (flags.matches("[UV]+")) {
+          } else if (pattern4.matcher(flags).matches()) {
             posTags.add(IPOSTag.TAG_ADJ);
           }
 

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.


------------------------------------------------------------------------------
RSA(R) Conference 2012
Mar 27 - Feb 2
Save $400 by Jan. 27
Register now!
http://p.sf.net/sfu/rsa-sfdev2dev2
_______________________________________________
Languagetool-cvs mailing list
Languagetool-cvs@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/languagetool-cvs

Reply via email to