[英]Finding # occurrences of a character in a string in Ruby
我正在寻找可以帮助我找到字符串中某个字符出现次数的 Ruby 方法 (1.9 ...)。 我正在寻找所有事件,而不仅仅是第一个。
例如:“Melanie is a noob” 字母“a”出现了两次。 我可以使用什么 Ruby 方法来找到它?
我一直在使用Ruby-doc.org作为参考, String: class
的scan
方法引起了我的注意。 措辞对我来说有点难以理解,所以我并没有真正掌握scan
的概念。
来自先前提出的问题的此链接应该有助于扫描 Ruby 中的字符串
scan 将字符串中所有出现的字符串作为数组返回,因此
"Melanie is a noob".scan(/a/)
将返回
["a","a"]
您正在寻找String.index()
方法:
返回str中给定子字符串或模式(regexp)第一次出现的索引。 如果找不到则返回nil。 如果存在第二个参数,则它指定字符串中开始搜索的位置。
"hello".index('e') #=> 1 "hello".index('lo') #=> 3 "hello".index('a') #=> nil "hello".index(?e) #=> 1 "hello".index(/[aeiou]/, -3) #=> 4
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.