regex-lookarounds - Lookaround 术语中的“无” [RAKU]
问题描述
我正在阅读有关“用于嵌套结构的波浪号”的正则表达式文档。
关于使用的副解释<?>
是:
这里
<?>
成功匹配空字符串。
我以为我可以使用它来<?[]>
代替它,但它没有这样做!
举个例子:
say so "" ~~ / <?> /;
say so "test" ~~ / <?> /;
say so "" ~~ / <?[]> /;
say so "test" ~~ / <?[]> /;
响应:
True
True
False
False
有人可以给我一个解释吗?
解决方案
语法<?[]>
意味着与空字符类匹配的前瞻。观察空字符类也永远不会匹配:
say "x" ~~ /<[]>/ # Nil
字符类指定一组可以匹配的字符。空字符类意味着一组空字符,因此不可能匹配任何内容。
推荐阅读
- json - ASP.NET Core 3 - Serilog 如何在 appsettings.json 文件中配置 Serilog.Sinks.Map?
- reactjs - 将数据传递给 react-vega
- android - 评级栏在回收站视图中为 0
- swift - Firebase 和 Google 身份验证构建失败 => API_UNAVAILABLE(macCatalyst) ==> “预期 ','”
- localhost - 将 Instagram 基本显示 API 与 Hugo 和 localhost 等静态站点结合使用?
- diagrammer - 使用 DiagrammeR 节点和边而不是 graphviz 创建流程图
- java - android studio Arraylist 按降序排序
- ecmascript-6 - 从对象数组中删除重复的对象副本
- powershell - Powershell在启动时不运行颜色更改
- django - Django 使用父对象获取相关子对象