Merge remote-tracking branch 'origin/merge/Jalview-JS/develop_feature/JAL-3690_callba...
[jalview.git] / src / jalview / io / ModellerDescription.java
index a56f2af..48a6903 100755 (executable)
@@ -22,6 +22,7 @@ package jalview.io;
 
 import jalview.datamodel.DBRefEntry;
 import jalview.datamodel.SequenceI;
+import jalview.util.Platform;
 
 import java.util.List;
 
@@ -95,12 +96,20 @@ public class ModellerDescription
     }
   };
 
+  private static Regex VALIDATION_REGEX;
+
+  private static Regex getRegex()
+  {
+    return (VALIDATION_REGEX == null
+            ? VALIDATION_REGEX = Platform
+                    .newRegex("\\s*((([-0-9]+).?)|FIRST|LAST|@)", null)
+            : VALIDATION_REGEX);
+  }
+
   private resCode validResidueCode(String field)
   {
     Integer val = null;
-    Regex r = new Regex(
-            "\\s*((([-0-9]+).?)|FIRST|LAST|@)");
-
+    Regex r = getRegex();
     if (!r.search(field))
     {
       return null; // invalid