regex - 使用正则表达式匹配 Dart 语言中的特定字符串
问题描述
我正在寻找 Dart 的 Regex 公式,以检查输入是否与我证明的特定字符串匹配。示例:输入是 'butter',证明字符串是 ['but','burst','bus']。程序应该返回 false,因为 'but' 不等于 'butter'。但它返回true如下代码。
void main() {
const string = 'Can you give me a butter';
const pattern = r'(but)|(burst)|(bus)';
final regExp = RegExp(pattern);
print(regExp.hasMatch(string.toLowerCase())); //true
}
解决方案
当我如下更改代码时,它运行良好。
void main() {
const string = 'Can you give me a But asasa';
const pattern = r'\b(but|burst|bus)\b';
final regExp = RegExp(pattern, caseSensitive: false);
print(regExp.hasMatch(string));
}
推荐阅读
- android - 当我在演示者中使用 @inject 时发生 UninitializedPropertyAccessException
- opencv - python opencv从bytearray创建图像
- javascript - 将 props 传递给 createSwitchNavigator 会破坏 createAppContainer
- javascript - 使用纯 JavaScript 触发添加
- cucumber - 我只想在黄瓜 html 报告中打印失败的场景
- javascript - 如何在javascript中创建日期过滤器?
- angular - 如何使用角度事件在文本字段中显示字符串的长度。?
- java - Java 使用 2 种不同的对象类型作为类中的字段
- sql - 在 oracle 中翻译命令
- python - 调用异步函数时如何防止上下文切换?