Denne guiden vil se på forskjellige måter vi kan reversere en streng på Ruby -programmeringsspråket.
Metode 1: Omvendt
Den enkleste måten å reversere en streng i Ruby er å bruke den innebygde omvendte metoden. En streng er en rekke tegn i sekvensiell rekkefølge. Derfor kan vi bruke omvendt metode for å få inngangsstrengelementene i omvendt rekkefølge.
For eksempel:
str = "Hei, verden!""Eksemplet ovenfor skal returnere “Hei, verden!" baklengs:
!Dlrow, OllehDen omvendte metoden påvirker ikke den opprinnelige strengen; det returnerer bare en kopi i omvendt rekkefølge.
For å påvirke den opprinnelige strengen, kan vi bruke motsatt! metode.
str = "Hei, verden!"".omvendt!Metode 2: Loop
Vi kan også bruke en sløyfe for å snu en streng. I et slikt tilfelle itererer vi over tegn i strengen og legger dem på nytt til en ny streng i omvendt rekkefølge.
Tenk på følgende eksempel:
src = "Hei, verden!""MERK: Du kan ignorere “Puts Src [i]” -linjen. Formålet er å illustrere hvordan koden fungerer.
Du vil merke at resultatet ligner på omvendt funksjon.
!Dlrow, OllehMetode 3: Omvendt ord
Anta at du vil snu et ord i stedet for et enkelt tegn? I et slikt scenario kan vi dele den medfølgende strengen og snu hvert ord.
Ta en titt på eksemplet nedenfor:
Word = "Dette er en full setning.""I eksemplet over delte vi setningen i forskjellige ord (ved å bruke mellomrom). Vi snur deretter hvert ord og blir med dem tilbake igjen.
Den resulterende utgangen er som vist:
setning full a er detteMetode 4: Injiser
En annen metode vi kan bruke for å reversere en streng er å bruke injeksjonsmetoden. Det fungerer tett likt reduserer, og mange anser det som et alias.
Vi starter med å lage en matrise fra den spesifiserte strengen ved hjelp av Chars -metoden:
"Hei Verden!"".CharsNår vi har en rekke tegn, kan vi kalle injeksjonsmetoden.
setter "hei, verden!"".Chars.injiser | x, y | y + xDen resulterende verdien er den passerte strengen i omvendt rekkefølge.
Du kan lære mer om omvendt streng fra følgende ressurs.
Konklusjon
Denne guiden dekker forskjellige metoder du kan implementere for å snu en streng i Ruby. Utforsk gjerne mer eller lag dine tilpassede funksjoner.