在我的应用程序中,我必须扫描所有用户短信并根据一些关键字对其进行过滤。因为我可以smsBody.contains(filterKey)
直接使用。但是假设过滤键就像你已经获得了<>+Rewards,其中<>应该有一些数字。即,您已获得 1000 奖励,如果此字符串出现在短信中,我必须拒绝。我在下面添加了我的代码
if (!shouldIgnore(smsBody)) {
//further process
} else {
LogUtils.LOGD(TAG, "ignoring message : " + smsBody);
}
public boolean shouldIgnore(String body) {
ListIterator<String> listIterator =mList.listIterator()
while(listIterator.hasNext()){
String key = listIterator.next();
if(smsBody.contains(key)){
return true;
}
}
return false
}
String.contains() 只有在准确的键出现时才会返回 true,但在这种情况下,键可能不准确。我该如何修改这个方法?