isContainsWord method
Returns true if this string contains find as a whole word.
When isCaseSensitive is false (default), comparison is
case-insensitive.
Implementation
@useResult
bool isContainsWord(String? find, {bool isCaseSensitive = false}) {
if (isEmpty || find == null || find.isEmpty) {
return false;
}
final String escapedFind = find.replaceAllMapped(
RegExp('[.*+?^\${}()|[\\]\\\\]'),
(Match m) => '\\${m.group(0) ?? ''}',
);
final String pattern = '\\b$escapedFind\\b';
final RegExp regex = RegExp(pattern, caseSensitive: isCaseSensitive);
return regex.hasMatch(this);
}