Как обработать NULL при использовании pattern.compile? Я использую следующую строку для сравнения строк
if(Pattern.compile(Pattern.quote(s2), Pattern.CASE_INSENSITIVE).matcher(s1).find())
В некоторых случаях s1 может иметь значение NULL, и, очевидно, он вызывает исключение нулевого указателя. Я знаю, что это может быть обработано другим условием "если" для s1. Но я хотел бы знать любое другое альтернативное решение?
EDIT
Iterator iter = sampleList().iterator();
while (iter.hasNext()) {
SampleObj so = (SampleObj) iter.next();
if (!s1.equalsIgnoreCase("")) {
if (Pattern.compile(Pattern.quote(s1), Pattern.CASE_INSENSITIVE).matcher(so.getS1()).find())
match = true;
else
match = false;
}
if (!s3.equalsIgnoreCase("")) {
if (Pattern.compile(Pattern.quote(s3), Pattern.CASE_INSENSITIVE).matcher(so.getS3()).find())
match = true;
else
match = false;
}
}
S1 и S3 - входы, которые совпадают по итератору.