Index: lams_build/lib/lams/lams.jar =================================================================== diff -u -rb57e4400eee8613fdc37753cae755ccea6d09a5c -r7d2a82b7692725eb6d795432931510a199e9b2d0 Binary files differ Index: lams_common/src/java/org/lamsfoundation/lams/learningdesign/TextSearchCondition.java =================================================================== diff -u -r542b83631b403e37429fce3bb928f2800c5cd9b8 -r7d2a82b7692725eb6d795432931510a199e9b2d0 --- lams_common/src/java/org/lamsfoundation/lams/learningdesign/TextSearchCondition.java (.../TextSearchCondition.java) (revision 542b83631b403e37429fce3bb928f2800c5cd9b8) +++ lams_common/src/java/org/lamsfoundation/lams/learningdesign/TextSearchCondition.java (.../TextSearchCondition.java) (revision 7d2a82b7692725eb6d795432931510a199e9b2d0) @@ -66,11 +66,11 @@ * Regular expression that divides a string into single words. The meaning is "one or more whitespace characters or * beginnings of a line or ends of a line". */ - private static final String WORD_DELIMITER_REGEX = "(?:\\s|$|^)+"; + protected static final String WORD_DELIMITER_REGEX = "(?:\\s|$|^)+"; /** * Integer that sets flags for regex pattern matching. */ - private static final int PATTERN_MATCHING_OPTIONS = Pattern.CASE_INSENSITIVE | Pattern.UNICODE_CASE + protected static final int PATTERN_MATCHING_OPTIONS = Pattern.CASE_INSENSITIVE | Pattern.UNICODE_CASE | Pattern.MULTILINE; /** * A regular expression pattern that matches HTML tags. @@ -189,14 +189,14 @@ * @return true if text satisfies this condition */ public boolean matches(String text) { - if (text == null) { - return false; - } + // we parse the condition strings to more useful arrays of words if (!conditionsParsed) { parseConditionStrings(); } - + if (text == null) { + return getAllWordsCondition() == null && getAnyWordsCondition() == null && getPhraseCondition() == null; + } Pattern regexPattern = null; StringBuilder stringPattern = null; Matcher matcher = null;