import java.util.Map;\r
import java.util.Set;\r
import java.util.UUID;\r
+import java.util.regex.Matcher;\r
+import java.util.regex.Pattern;\r
\r
import org.apache.log4j.Logger;\r
import org.springframework.stereotype.Component;\r
import eu.etaxonomy.cdm.io.common.Source;\r
import eu.etaxonomy.cdm.io.pesi.out.PesiTransformer;\r
import eu.etaxonomy.cdm.model.agent.TeamOrPersonBase;\r
-import eu.etaxonomy.cdm.model.common.AnnotationType;\r
import eu.etaxonomy.cdm.model.common.CdmBase;\r
import eu.etaxonomy.cdm.model.common.Extension;\r
import eu.etaxonomy.cdm.model.common.ExtensionType;\r
-import eu.etaxonomy.cdm.model.common.IdentifiableEntity;\r
import eu.etaxonomy.cdm.model.common.IdentifiableSource;\r
-import eu.etaxonomy.cdm.model.description.TaxonDescription;\r
import eu.etaxonomy.cdm.model.name.Rank;\r
import eu.etaxonomy.cdm.model.name.TaxonNameBase;\r
import eu.etaxonomy.cdm.model.name.ZoologicalName;\r
Synonym synonym = null;\r
Taxon taxon;\r
try {\r
- if ((status == T_STATUS_ACCEPTED) || (autId == A_AUCT)) { // taxon\r
+ // check for occurrence of the auct string in auctName\r
+ String auctRegEx = "\bauct\\.?\b"; // A word "auct" with or without "."\r
+ if (expressionMatches(auctRegEx, autName)) {\r
+ \r
if (autId == A_AUCT) { // misapplied name\r
zooName.setCombinationAuthorTeam(null);\r
zooName.setPublicationYear(null);\r
\r
return success;\r
}\r
- \r
+\r
+ /**\r
+ * Returns whether a regular expression is found in a given target string.\r
+ * @param regEx\r
+ * @param targetString\r
+ * @return\r
+ */\r
+ private static boolean expressionMatches(String regEx, String targetString) {\r
+ Pattern pattern = Pattern.compile(regEx);\r
+ Matcher matcher = pattern.matcher(targetString);\r
+ if (matcher.find()) {\r
+ return true;\r
+ } else {\r
+ return false;\r
+ }\r
+ }\r
\r
/**\r
* Processes taxa from complete taxon store\r