Ich suche nach der Ruby-Methode (1.9 ...), mit der ich die Anzahl der Vorkommen eines Zeichens in einer Zeichenfolge ermitteln kann. Ich suche nach allen Vorkommen, nicht nur nach dem ersten.
Zum Beispiel: "Melanie ist ein Noob" Der Buchstabe 'a' kommt in zwei Fällen vor. Welche Ruby-Methode könnte ich verwenden, um dies zu finden?
Ich habe Ruby-doc.org als Referenz verwendet und die scan
Methode ist String: class
mir aufgefallen . Der Wortlaut ist für mich etwas schwer zu verstehen, daher verstehe ich das Konzept von nicht wirklich scan
.
Edit: Ich konnte dies mit lösen scan
. Ich habe in einem Video geteilt, wie ich es erreicht habe.
Antworten:
Wenn Sie nur die Anzahl der A's wollen:
Docs für weitere Details.
quelle
count
zählt Zeichen, keine Zeichenfolgen. "voyage.localhost.com" .count ('www.') ist dasselbe wie "voyage.localhost.com" .count ('w.') und da es keineDieser Link von einer zuvor gestellten Frage soll beim Scannen einer Zeichenfolge in Ruby helfen
scan gibt alle Vorkommen einer Zeichenfolge in einer Zeichenfolge als Array zurück
wird zurückkehren
quelle
scan
funktioniert auch mit einfachen Strings, kann alsoscan('a')
auch verwendet werdenIch konnte dies lösen, indem ich eine Zeichenfolge durchlief,
scan
wie in einer anderen Antwort gezeigt.Beispielsweise:
Ausgänge:
2
Ich war auch in der Lage, die Vorkommnisse durch Scannen und Durchführen eines Stichs anstelle von Regex zu erfassen, was geringfügig von einer anderen Antwort abweicht, aber hilfreich war, um Regex zu vermeiden.
Ausgänge:
Ich habe diese Methoden in einem kleinen Video-Guide weiter untersucht, den ich erstellt habe, nachdem ich es herausgefunden hatte.
quelle