我刚刚了解了正则表达式,我知道它们是一种用于在给定字符串中搜索匹配项的模式。
我了解如何使用 (/[aeiou]/)
与 start_with?
方法有效。正则表达式 (/[aeiou]/)
是我在给定字符串中检查的一类字符。更具体地说,我正在检查给定的字符串是否以正则表达式中的任何这些字符开头。
但是,当我尝试对 end_with?
使用相同的模式时方法,我得到一个 TypeError 并且似乎不能使用正则表达式。
为什么是这样?对我来说,这两种方法似乎在 Ruby 指南中共享一个非常相似的文档。
最佳答案
通常点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/