Ruby:
Fjerne anførselstegn fra en streng
Hvordan:
Ruby har noen smarte triks i ermet for å klippe ut de irriterende anførselstegnene. Du kan bruke gsub
eller delete
metodene for å få jobben gjort. Her er noe kode å tygge på:
# Bruke gsub for å fjerne doble og enkle anførselstegn
quoted_string = "\"Si 'hei' til min lille venn!\""
unquoted_string = quoted_string.gsub(/'|"/, '')
puts unquoted_string
# Utdata: Si hei til min lille venn!
# Hvis du vet at du bare vil håndtere én type anførselstegn
single_quoted_string = "'Bli en stund og lytt!'"
clean_string = single_quoted_string.delete("'")
puts clean_string
# Utdata: Bli en stund og lytt!
Dypdykk
Historien om anførselstegn går tilbake til programmeringens tidligste dager, hvor de ofte ble brukt som strengavskillere. I dag, som da, kan du finne deg selv i å måtte fjerne disse anførselstegnene når de ikke er nødvendige eller når de kunne forstyrre datalagring og -manipulasjon.
Vi har snakket om gsub
og delete
, men det finnes andre metoder også, som tr
eller tr_s
, som gir deg litt mer kontroll eller kan håndtere noen forskjellige brukstilfeller:
# tr kan også fjerne anførselstegn
double_quoted_string = "\"Gjør eller ikke gjør, det er ikke noe forsøk.\""
clean_string = double_quoted_string.tr('\"', '')
puts clean_string
# Utdata: Gjør eller ikke gjør, det er ikke noe forsøk.
Husk, hver av disse metodene har sine bruksområder. gsub
er mer kraftfull når du håndterer komplekse mønstre eller flere erstatninger. delete
og tr
fungerer vakkert for enkle, rett på sak tegnfjerninger.
Se også
For ytterligere lesing, og for å se disse metodene i aksjon innenfor større kodebaser, sjekk ut:
- Ruby dokumentasjonen for String#gsub, String#delete, og String#tr.
- Ruby Monstas har et flott Strengøvelses sett, som inkluderer arbeid med anførselstegn.
- Stack Overflow diskusjoner om strengmanipulering gir praktiske problemer og løsninger fra med-Rubyister.