返回介绍

17.7.9 包含在另外一个序列中的序列

发布于 2020-09-09 22:55:53 字数 675 浏览 919 评论 0 收藏 0

在一个序列中容纳另外一个序列可以按如下方式表示:

sequence_expr ::=         // 引用自附录A.2.10
    ...
  | sequence_expr within sequence_expr

语法17-11 — within结构的语法(摘录自附录A)

seq1 within seq2结构是下述语句的缩写:

(1[*0:$] ##1 seq1 ##1 1[*0:$]) intersect seq2

对于复合序列seq1 within seq2,只要seq2在一个有限的连续时钟标记间隔上匹配并且seq1在这个间隔的某些子间隔上匹配,那么这个复合序列就在这段间隔上匹配。也就是说,seq1seq2的匹配必须满足下列条件:

  • seq1匹配的起始点必须不早于seq2匹配的起始点。
  • seq1匹配的结束点必须不晚于seq2匹配的结束点。
例如,对于下面的序列:

!trdy[*7] within (($fell irdy) ##1 !irdy[*8])

在图17-12中所显示的路径中,上面的例子在时钟标记3到时钟标记11间匹配。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文