regex - 如何使用带有 end_with 的正则表达式? Ruby 中的方法?

标签 regex ruby

我刚刚了解了正则表达式,我知道它们是一种用于在给定字符串中搜索匹配项的模式。

我了解如何使用 (/[aeiou]/)start_with?方法有效。正则表达式 (/[aeiou]/)是我在给定字符串中检查的一类字符。更具体地说,我正在检查给定的字符串是否以正则表达式中的任何这些字符开头。

但是,当我尝试对 end_with? 使用相同的模式时方法,我得到一个 TypeError 并且似乎不能使用正则表达式。

为什么是这样?对我来说,这两种方法似乎在 Ruby 指南中共享一个非常相似的文档。

enter image description here

最佳答案

通常点start_with?end_with?是提供使用正则表达式的替代方法。即以下内容的意图相似:

"example".start_with?("ex")
"example".match?(/\Aex/)

如果您想使用正则表达式,请使用 match match? 这在较新版本的 Ruby 中可用。

只需将您的正则表达式转换为 anchor 定:
str.start_with?(/\A[aeiou]/)

关于regex - 如何使用带有 end_with 的正则表达式? Ruby 中的方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58438788/

相关文章:

Java:检查字符串中是否有1次或多次

ruby-on-rails - 如何通过 C 程序的命令行界面编译 C 程序以与我的 ruby​​ gem 一起使用?

ruby-on-rails - 我如何重构将此数组转换为哈希

ruby-on-rails - 使用带有 Rspec 的 request-url 的测试 Controller 方法

regex - 如何使用 linux regex 命令将行乘以范围

javascript - RegEx 模式不适用于 AJAX 响应

ruby-on-rails - 修改设计重置密码错误文本

mysql - 有人让 Ruby 与 MySQL 5.1 一起工作吗?

Java 正则表达式 后向查找

ruby - 正则表达式的 o 修饰符是什么意思?