Dart RegExp 字边界等效项

2024-01-03

我尝试在我的 flutter 应用程序中匹配包含确切单词“world”的单词和句子。我认为最好的方法是使用单词边界。我的正则表达式如下所示:

String str = "world";
var regexp = RegExp("\b($str)\b", caseSensitive: false);

但这不起作用。这是输出:

regexp.hasMatch("Hello World"); //false
regexp.hasMatch("World"); //false
regexp.hasMatch("worlds"); //false as expected

\b 在 Dart 中不起作用吗?有谁知道如何实现所需的行为?我找不到任何有关此的信息。

Thanks.


来自飞镖正则表达式文档 https://api.dartlang.org/stable/2.3.0/dart-core/RegExp-class.html;

Dart 正则表达式与 JavaScript 正则表达式具有相同的语法和语义。

如果您正在使用RegExp在 JavaScript 中,单词边界实际上可以表示为\\b,即我们需要添加一个额外的转义符\b字边界:

String str = "world";
var regexp = RegExp("\\b($str)\\b", caseSensitive: false);
regexp.hasMatch("Hello World"); // true

请注意,您通常应该避免使用RegExp如果可能,请改用正则表达式文字。其原因是文字放松并使正则表达式语法更简单。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Dart RegExp 字边界等效项 的相关文章

随机推荐

  • 两个物体之间的夹持

    I need grip between two objects actually small cube is a player having rigid body and big cube is an object that helps s
  • Android Studio WebView中的文件上传

    我想允许我的 WebView Android 应用程序使用上传按钮 由于我不是 Android 开发人员 因此我需要您的帮助来为 Android WebView 启用图像上传器 这是我的 MainActivity 文件 package co
  • 使用 XSLT 将 XML 转换为 CSV

    我有以下 XML 文档
  • 如何让 ¤ 按字面显示,而不是显示为 HTML 实体

    我正在使用 php 查看其中包含 URL 的 XML 文件 URL 看起来像这样 当我回显 URL 时 curren 显示为 又名 164 A4 或货币符号 并且链接不起作用 即使没有结束分号 也会发生这种情况 使 curren 按字面显示
  • 从 2 列 ComboBox VBA 检索两个值

    我有一个用户表单 excel VBA 其中有一个 2 列组合框 当用户从组合框中选择某个值时 我想获取他选择的值以及与第一个值关联的值 即第二列值 我该怎么做呢 简单地ComboBox1 Value返回第一列的值 ComboBox1 Val
  • 如何在子文件夹/包中使用 Go 1.16 嵌入功能?

    Go 1 16 已发布 我想使用新的嵌入功能 如果所有内容都在主包中 我就可以让它工作 但尚不清楚如何处理从子文件夹 包访问资源 尝试通过 embed FS 支持来做到这一点 例如我有一个 main go 并且在处理程序包 文件夹中还有一个
  • 获取属性的值

    这是我的 XML
  • 如何在Java运行时创建动态类

    在运行时更改现有 Java 文件的某些属性后 是否可以从现有 Java 文件创建新的 Java 文件 假设我有一个java文件 public class Student private int rollNo private String n
  • 选择 SQL Server 数据库大小

    我怎样才能查询我的sql服务器只获取数据库的大小 我用过这个 use MY DB exec sp spaceused 我懂了 database name database size unallocated space My DB 17899
  • 以数组形式返回 sql 查询

    我正在使用 jqueryui 及其自动完成插件 它使用 json 来提取项目 我想修改它 以便从我的数据库中提取项目 物品应该是这样的 items array Great em Bittern em gt Botaurus stellari
  • 检查文本是否为 HTML

    我正在使用 Meteor 我正在尝试检查文本是否为 html 但通常的方法不起作用 这是我的代码 post function var postId Session get postId var post Posts findOne id p
  • RGB 到 HSI 以及 HSI 到 RGB 转换

    我正试图掩饰RGB to HSI并恢复它 该任务需要从头开始 In RGB to HSI转换 饱和度和强度输出都很好 但我似乎没有明白Hue的表述有什么问题 示例输出 Red 255 Green 255 Blue 255 Hue 21474
  • Nginx LetsEncrypt 错误“/etc/letsencrypt/options-ssl-nginx.conf”没有这样的文件或目录

    我正在尝试使用 LetsEncrypt 和 Nginx 添加 https 我已经添加了 certbot 并且它运行成功 然后 当尝试运行 Nginx 服务器时 我收到此错误 docker entrypoint sh docker entry
  • EF4 CTP5 的存储库模式

    我正在尝试使用 ef4 ctp5 实现存储库模式 我想出了一些东西 但我不是 ef 方面的专家 所以我想知道我所做的是否是好事 这是我的数据库上下文 public class Db DbContext public DbSet
  • 用户输入和命令行参数[关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 如何拥有可以接受用户输入的 Python 脚本 如果从命令行运行 如何让它读取参数 要读取用户输入 您可以尝试the cmd modu
  • 使用给定的部分大小列表将 Scala 列表拆分为多个部分。[分区]

    我有两个清单 val list1 List Int List 5 2 6 val list2 List Any List a b c d e f g h i j k 这样list1 sum gt list2 size 我想要一个由 list
  • UIWebview 使用 javascript 在移动 safari 中打开 URL

    所以我正在使用 Phaser 构建一个 HTML5 游戏 并且有一个按钮可以调用 javascript 中的 URL 如下所示 window open http google com blank 这在桌面上在新窗口中打开时效果很好 我也可以
  • 使用 WS-Security 连接到 Java SOAP Web 服务的 WCF 客户端

    我在使用 SOAP 1 1 连接到 Java Web 服务的 NET WCF 客户端时遇到问题 该服务需要通过 SSL 进行传输级加密 并使用 WS Security 协议进行 SOAP 安全性 两者都使用相同的证书 我已安装证书并且可以连
  • 需要有关 Play 2.2 子模块以及其他模块作为依赖项的项目布局的建议

    我有一个带有模块的现有 SBT 项目 我想将 Play 2 2 作为子模块添加到我的项目中 这个新的 Play 模块将依赖于其他模块 到目前为止我发现的主要是 Play 是带有支持模块的主要项目 如果 Play 确实支持此设置 请为我指出正
  • Dart RegExp 字边界等效项

    我尝试在我的 flutter 应用程序中匹配包含确切单词 world 的单词和句子 我认为最好的方法是使用单词边界 我的正则表达式如下所示 String str world var regexp RegExp b str b caseSen