+ private boolean isValidAlignment(AlignmentI seqdataset)
+ {
+ String header = wsInfo.getInfoText()
+ + "\nValidating submited Alignment...";
+ wsInfo.setInfoText(header);
+ int validSeqCount = 0;
+ List<SequenceI> seqs = seqdataset.getSequences();
+ if (seqs.size() < 2)
+ {
+ wsInfo.setInfoText(header
+ + "\nA minimum of two sequences is required to perform this operation");
+ return false;
+ }
+
+ for (SequenceI seq : seqs)
+ {
+
+ if (seq.getSequenceAsString().matches(
+ "([(a-zA-Z?)(-?)(.?)]+)?[a-zA-Z]([(a-zA-Z?)(-?)(.?)]+)?"))
+ {
+ ++validSeqCount;
+ }
+ if (validSeqCount > 1)
+ {
+ wsInfo.setInfoText(header
+ + "\nAlignment sequences was successfully validated");
+ return true;
+ }
+ }
+
+ wsInfo.setInfoText(header
+ + "\nA minimum of two sequences with at least one non-gap character in each sequence is required to perform this operation");
+ return false;
+ }
+
+ public static void main(String[] args)
+ {
+ System.out
+ .println("A"
+ .matches("([(a-zA-Z?)(-?)(.?)]+)?[a-zA-Z]([(a-zA-Z?)(-?)(.?)]+)?"));
+ }
+
+
+