/ / Znajdź i zamień wszystkie znaki przed # - ruby-on-rails

Znajdź i zamień wszystkie znaki przed # - ruby-on-rails

Mam tablicę zawierającą ciągi. Każdy ciąg wygląda następująco:

Debit Card Purchase 06/14 06:09p #1936 UIC CAMPUS PRKG ADMIN CHICAGO IL 16168

Chciałbym usunąć wszystko przed znakiem "#", aby zachować tylko nazwę UIC CAMPUS PRKG ADMIN CHICAGO IL 16168. Jak używać skryptów regex do robienia tego w szynach?

JEŚLI CHCĘ, chciałbym po prostu dostać UIC CAMPUS PRKG ADMIN, ale nie wiem, jak mogę odróżnić tylko tę część, ale nie jestem pewien, czy jest to możliwe. Szukam również sugestii.

Odpowiedzi:

1 dla odpowiedzi № 1

str = "Debit Card .... PRKG ADMIN CHICAGO IL 16168"

Możesz wyodrębnić drugą część przez

str = str.sub(/.*#d+s*/, "") = "UIC CAMPUS PRKG ADMIN CHICAGO IL 16168"

Alternatywnie możesz użyć podziału na łańcuchu

str = str.split(/#d+s*/).last = "UIC CAMPUS PRKG ADMIN CHICAGO IL 16168"

Następnie, aby usunąć miasto, stan i zamek błyskawiczny

str = str.sub(/(s*w+s*){2}d+$/,"") = "UIC CAMPUS PRKG ADMIN"


0 dla odpowiedzi nr 2

Może coś takiego?

# (s = "Debit ... IL 16168")
s.sub /.*#d+ /, "" # => "UIC CAMPUS PRKG ADMIN CHICAGO IL 16168"

Następnie przypisałbyś to innej zmiennej lub używałeś s.sub! /.../, ""