在 Ruby 中比较序列

2024-01-12

假设我必须(中小型)数组:

tokens = ["aaa", "ccc", "xxx", "bbb", "ccc", "yyy", "zzz"]
template = ["aaa", "bbb", "ccc"]

我怎样才能确定是否tokens包含所有条目template,按照同样的顺序?

(请注意,在上面的示例中,应忽略第一个“ccc”,从而导致由于最后一个“ccc”而导致匹配。)


这适用于您的示例数据。

tokens = ["aaa", "ccc", "xxx", "bbb", "ccc", "yyy", "zzz"]
template = ["aaa", "bbb", "ccc"]

pos = 0
condition_met = true
template.each do |temp|
  if (tpos = tokens[pos..-1].index temp) == nil then
    break condition_met = false
  else
    pos = tpos
  end
end

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

在 Ruby 中比较序列 的相关文章

  • 如何从数组中删除空白元素?

    我有以下数组 cities Kathmandu Pokhara Dharan Butwal 我想从数组中删除空白元素并想要以下结果 cities Kathmandu Pokhara Dharan Butwal 有没有类似的方法compact
  • 将 C 数组作为 char* 函数参数传递

    我有一些使用以下变量声明维护的代码 char tmpry 40 它与此功能一起使用 char SomeFunction char tmpryP Do stuff 函数调用是 SomeFunction tmpry 0 我非常确定这与以下内容相
  • 使用无效数据调用函数 FieldValue.arrayUnion()。 FieldValue.serverTimestamp() 只能与 update() 和 set() 一起使用

    addDeposit account deposit let depositsDoc this db collection accounts doc account id collection deposits doc deposits r
  • Capybara 的 has_selector 有哪些选项?

    我在 RSpec 中遇到此错误 有没有任何文档have selector解释了选项哈希中的每个键以及它到底有什么作用 invalid keys content should be one of text visible between co
  • 在 Lucene.NET 中索引 Json 对象数组

    我正在努力将任意 json 对象放入 Lucene NET 索引中 给定的对象可能如下所示 name Tony age 40 address street Weakroad number 10 floor 2 door Left skill
  • 使用 YAML.load 解析 json 安全吗?

    我使用的是红宝石2 1 0 我有一个 json 文件 例如 测试 json item apple 1 banana 2 使用 YAML load 加载此文件是否安全 YAML load File read test json 我正在尝试加载
  • VB - 如何读取和写入二进制文件?

    如何从任何文件读取原始字节数组 Dim bytes as Byte 然后将该字节数组写回到新文件中 我需要它作为字节数组来在两者之间进行一些处理 我目前正在使用 To read Dim fInfo As New FileInfo dataP
  • 从类内部调用属性访问器方法[重复]

    这个问题在这里已经有答案了 我正在尝试调用我的类属性编写器之一 但由于某种原因它永远不会被调用 下面是一些代码 可以使这一点更清楚 class Test attr reader test def test val puts Called t
  • 如何复制 ArrayIterator 以保留其当前迭代位置?

    因为这似乎是我必须做的才能达到这种效果 arr a gt first b gt second iter new ArrayIterator arr Do a bunch of iterations iter gt next new iter
  • Java中char数组的默认值是多少?

    如果我像这样分配字符数组 char buffer new char 26 它分配的默认值是什么 我尝试打印它 但它只是一个空字符 System out println this is what is inside gt buffer 1 t
  • ruby 的 String .hash 方法如何工作?

    我只是红宝石的新手 我见过一个字符串方法 String hash 例如 在irb 我试过了 gt gt mgpyone hash returns gt 144611910 这个方法是如何工作的 The hash方法是为所有对象定义的 看文档
  • 如何在 Microsoft 报告中显示字节数组中的图像

    我使用报表文件和 ReportViewer 控件来显示在运行时从对象动态加载数据的报表 我需要显示一个以字节数组形式存储在对象中的图像 PictureBox 的值当前设置为 First Fields ImageData Value dtst
  • 创建动态多维对象/数组

    我正在尝试使用 JS 创建一个多维数组 以便我可以通过 Ajax 调用 PHP 来发布一些数据 这可能很简单 但我对 JS 的了解很少关于这个具体的事情 这是带有代码的 JSFiddle http jsfiddle net k5Q3p 我想
  • 如何在 gem 的示例脚本中使用 pry-byebug ?

    我正在制作我的第一个 gem 它不是 Rails 应用程序 而是一个带有一些 AI 的 tic tac toe 库 这样我就可以与一个永远不会输的计算机对手比赛 并在可能的情况下强行获胜 现在我正在尝试调试人工智能中的攻击策略 但我似乎无法
  • 使用复选框过滤列表

    我有一个电影列表及其评级 在我的页面顶部 我有一个表单 其中提供了一个复选框列表 其中显示了每个可用的评级 G PG 13 等 一旦用户单击复选框并点击提交 我只想显示所选的电影 在我的索引方法中 我有一个名为的实例变量 filtered
  • ||= 是什么意思? [复制]

    这个问题在这里已经有答案了 我的应用程序控制器中有一个受保护的方法 def current user current user User find by id session user id end 我想知道什么 方法 我一直在努力寻找和找
  • 传递给函数时多维数组的指针类型是什么? [复制]

    这个问题在这里已经有答案了 我在大学课堂上学习了 C 语言和指针 除了多维数组和指针之间的相似性之外 我认为我已经很好地掌握了这个概念 我认为由于所有数组 甚至多维 都存储在连续内存中 因此您可以安全地将其转换为int 假设给定的数组是in
  • 在 NumPy 中获取 ndarray 的索引和值

    我有一个 ndarrayA任意维数N 我想创建一个数组B元组 数组或列表 其中第一个N每个元组中的元素是索引 最后一个元素是该索引的值A 例如 A array 1 2 3 4 5 6 Then B 0 0 1 0 1 2 0 2 3 1 0
  • 回滚后是否应该删除迁移

    我对 ruby 和 Rails 相当陌生 刚刚开始了解迁移 我的问题是回滚后删除迁移的最佳实践或正确时间是什么 到目前为止 我读到的内容是回滚后是否删除迁移的观点问题 但是在团队中工作时删除迁移是否有任何重大影响 以及保留迁移文件相对于删除
  • 从 pygame 获取 numpy 数组

    我想通过 python 访问我的网络摄像头 不幸的是 由于网络摄像头的原因 openCV 无法工作 Pygame camera 使用以下代码就像魅力一样 from pygame import camera display camera in

随机推荐

  • 如何使用 javascript 或任何库检查用户是否在线?

    我需要一些关于如何使用检查互联网连接的帮助JavaScript or jQuery或任何可用的图书馆 因为我正在开发一个离线应用程序 如果用户离线 我想显示一个版本 如果用户在线 我想显示另一个版本 目前我正在使用这段代码 if navig
  • Pandas 根据条件移动列数据

    I have dataframe看起来像这样 Name Val Rating 0 ABC 123 B 1 DEF 234 B 2 567 B NaN 3 GHI 890 D 但我想通过检查来移动数据 col Name 到下一栏 col Va
  • 将数据从 BeautifulSoup 导出到 CSV

    免责声明 我已经阅读过该领域的许多其他答案 但它们似乎对我不起作用 我希望能够将抓取的数据导出为 CSV 文件 我的问题是如何编写将数据输出到 CSV 的代码 当前代码 import requests from bs4 import Bea
  • t-SNE 在不同的机器上产生不同的结果

    我有大约 3000 个 100D 数据点 我用 t SNE 将它们投影到 2D 每个数据点属于三个类别之一 但是 当我在两台不同的计算机上运行脚本时 我不断得到不一致的结果 当我使用随机种子时 预计会出现一些不一致 但是其中一台计算机不断获
  • 如何通过运行时类型抛出异常?

    我想调用一个可能抛出异常的函数 如果它确实抛出异常 我想捕获它并将异常对象传递给处理函数 处理函数的默认实现只是简单地抛出异常 这是用来说明问题的精简代码 struct base exception exception char const
  • 如何向 StringBuilder 添加一定数量的空格?

    如何向 StringBuilder 添加一定数量 1 到 100 之间 的空格 StringBuilder nextLine new StringBuilder string time Util CurrentTime nextLine A
  • 如何(以编程方式)判断是否有/没有任何支持打开特定文档类型的注册应用程序?

    Apple 的 UIDocumentInteractionController PresentOpenInMenuFromBarButtonItem animated 方法文档指出 如果没有注册的应用程序支持打开文档 则文档交互控制器不会显
  • Android 清单 POST_NOTIFICATIONS 缺少导入

    尝试实现 android 13 或 提拉米苏 的通知权限 但未能获得该权限的导入 现在 目标SDK版本为32 编译SDK版本为32 我也在清单中声明了它 如下所示
  • elixir 中嵌套列表和结构的 get_in

    我有一个结构 s a Bla b c 我要拿c从中获得价值 我正在尝试做 get in s a b 但它并不是为了从结构中获取价值而设计的 有没有类似的东西可以让我获取c从带有嵌套结构的列表中 As 有记录的 https hexdocs p
  • php 类的性能损失

    我正在为我的公司开发一个网络应用程序 该应用程序用于跟踪我们购买 和使用 的工具 公司中的员工每次使用工具时都会在应用程序 mysql db 中注册 到目前为止 我都是以过程风格编写代码 我仍然是 OOP 的新手 我的程序代码运行良好并且相
  • WPF 访问列表视图代码隐藏的滚动查看器

    我需要从代码隐藏访问列表视图的滚动查看器 这是我的列表视图的定义
  • Python mysql.connector.errors。 %s 已传递给带引号的 SQL 查询

    我在Python中执行以下代码 cursor execute SHOW DATABASES ans dblist cursor fetchall for db name in ans dblist cursor execute SHOW T
  • Scala 相当于 Haskell 的 do-notation(再次)

    我知道哈斯克尔的 do x lt 1 2 3 y lt 7 8 9 let z x y return z 在Scala中可以表示为 for x lt List 1 2 3 y lt List 7 8 9 z x y yield z 但是 尤
  • 具有 Charfield 计数和零值的 Django 模型

    我有一个 Django 数据库模型 它有一些属性 其中之一是带有选项的 Charfield 类别 我现在想用每个类别的行数来注释该模型的查询集 问题是 我知道这样做的方式 只有查询集中存在的类别才会被计数 但我想要一个查询集 其中所有类别都
  • 来自守护进程的错误响应:获取 https://registry-1.docker.io/v2/:拨打 tcp:查找registry-1.docker.io...i/o 超时

    我试图从 docker io 中提取图像 但收到此错误 最近我更改了 DNS 我不确定这就是原因 我执行了minikube ssh我执行了docker pull然后我得到了这个错误 Error response from daemon Ge
  • OpenLayers:如何计算两点之间的距离?

    如何使用墨卡托投影计算 OpenLayers 中两点之间的距离 Thanks use point1 distanceTo point2 var Geographic new OpenLayers Projection EPSG 4326 v
  • 将 INT 转换为 DATETIME (SQL)

    我正在尝试将日期转换为日期时间 但出现错误 我要转换的数据类型是 float null 我想将其转换为 DATETIME 该代码的第一行工作正常 但我在第二行收到此错误 将表达式转换为数据类型日期时间时出现算术溢出错误 CAST CAST
  • 是否可以在 Windows 上构建 ffmpeg x64?

    真正的答案可能是 不 但仍然需要仔细检查 有没有人能够在 Windows VS2013 或 VS2015 上构建 ffmpeg x64 我知道 如果不进行大量修改 公开可用的资源是不可能的 然而 如果有人做到了并且他愿意分享一些技巧 编辑
  • 使用 Flutter Firestore 插件,为文档中的每个子集合执行一些操作

    为了帮助我更好地了解 Flutter 和 Firebase 我正在制作一个列表共享应用程序 我正在处理列表主屏幕 该屏幕将显示可重新排序的列表图块视图 其中每个用户列表都有一个图块 我还没有开始研究这些列表内部的内容 我已经设置了 fire
  • 在 Ruby 中比较序列

    假设我必须 中小型 数组 tokens aaa ccc xxx bbb ccc yyy zzz template aaa bbb ccc 我怎样才能确定是否tokens包含所有条目template 按照同样的顺序 请注意 在上面的示例中 应