X-Git-Url: http://source.jalview.org/gitweb/?a=blobdiff_plain;f=src%2Fjalview%2Fgui%2FStructureChooser.java;fp=src%2Fjalview%2Fgui%2FStructureChooser.java;h=d313002339e3377beaf85738ac6e81c1def06b56;hb=a064561d8665ee9db217b17cda826fceac90cbbc;hp=5d381b9bf84f1aaa0d10d8fc461ad95a25810212;hpb=b9df385dd6b61f92577c68b9f39ca0f9fc4d3993;p=jalview.git diff --git a/src/jalview/gui/StructureChooser.java b/src/jalview/gui/StructureChooser.java index 5d381b9..d313002 100644 --- a/src/jalview/gui/StructureChooser.java +++ b/src/jalview/gui/StructureChooser.java @@ -43,6 +43,7 @@ import java.util.Collection; import java.util.HashSet; import java.util.LinkedHashSet; import java.util.List; +import java.util.Objects; import javax.swing.JCheckBox; import javax.swing.JComboBox; @@ -301,6 +302,7 @@ public class StructureChooser extends GStructureChooser implements if (!isPDBRefsFound && !isUniProtRefsFound) { String seqName = seq.getName(); + seqName = sanitizeSeqName(seqName); String[] names = seqName.toLowerCase().split("\\|"); for (String name : names) { @@ -328,6 +330,21 @@ public class StructureChooser extends GStructureChooser implements } /** + * Remove the following special characters from input string +, -, &, |, !, (, + * ), {, }, [, ], ^, ", ~, *, ?, :, \ + * + * @param seqName + * @return + */ + private static String sanitizeSeqName(String seqName) + { + Objects.requireNonNull(seqName); + return seqName.replaceAll("\\[\\d*\\]", "") + .replaceAll("[^\\dA-Za-z ]", "").replaceAll("\\s+", "+"); + } + + + /** * Ensures sequence ref names are not less than 3 characters and does not * contain a database name * @@ -921,7 +938,8 @@ public class StructureChooser extends GStructureChooser implements pdbRequest.setResponseSize(1); pdbRequest.setFieldToSearchBy("(pdb_id:"); pdbRequest.setWantedFields(wantedFields); - pdbRequest.setSearchTerm(txt_search.getText() + ")"); + pdbRequest + .setSearchTerm(txt_search.getText().toLowerCase() + ")"); pdbRequest.setAssociatedSequence(selectedSequence); pdbRestCleint = new PDBRestClient(); PDBRestResponse resultList;