Пока вы можете выразить свое требование в виде регулярного выражения, это можно сделать с помощью оператора match .
Правило должно выглядеть примерно так:
rule 'Match APJ Abdul Kalam'
Person(name matches "A(\\.)?P(\\.)?J(\\.)? Abdul Kalam")
then
//...
end
Если ваша проблема не может быть решена с помощью регулярных выражений, то вы можете использовать реализацию алгоритма расстояния Левенштейна в служебном классе, а затем сделать что-то вроде этого:
rule 'Match name'
Person(Utils.levenshtein(name, "APJ Abdul Kalam"))
then
//...
end
Надеюсь, это поможет,