Estoy buscando el método Ruby (1.9 ...) que me puede ayudar a encontrar el número de apariciones de un carácter en una cadena. Estoy buscando todas las ocurrencias, no solo la primera.
Por ejemplo: "Melanie es una noob" Hay dos apariciones de la letra 'a'. ¿Cuál sería el método Ruby que podría usar para encontrar esto?
He estado usando Ruby-doc.org como referencia y el scanmétodo en el String: classme llamó la atención. La redacción me resulta un poco difícil de entender, por lo que realmente no entiendo el concepto de scan.
Editar: pude resolver esto usando scan. Compartí en un video cómo lo logré.

Respuestas:
Si solo quiere el número de a:
Docs para obtener más detalles.
fuente
countcuenta caracteres, no cadenas. "voyage.localhost.com" .count ('www.') es lo mismo que "voyage.localhost.com" .count ('w.') y como no hay w y dos puntos, el resultado es 2.Este enlace de una pregunta que se hizo anteriormente debería ayudar a escanear una cadena en Ruby
scan devuelve todas las apariciones de una cadena en una cadena como una matriz, por lo que
volverá
fuente
scanTambién funciona con cadenas simples, por lo que también sescan('a')pueden usarPude resolver esto pasando una cadena
scancomo se muestra en otra respuesta.Por ejemplo:
Salidas:
2
También pude extraer las ocurrencias usando escaneo y pasando una picadura en lugar de una expresión regular, que varía ligeramente de otra respuesta, pero fue útil para evitar la expresión regular.
Salidas:
Exploré estos métodos más a fondo en una pequeña guía de video que creé después de descubrirlo.
fuente