I produksjonen, har alle forekomster av ordet "man" er erstattet med "kvinne"; takket være g modifier. Interne variabler, $ 1, $ 2 ... $ 9 Her ønsker vi å se verdiene de interne variabler, $ 1, $ 2, etc ta etter erstatningen. Følgende kode illustrerer dette: bruke strenge; min $ availableString = ". Jeg er en mann du er en mann."; $ availableString = ~ s /(mann) /kvinne /; print "\\ $ 1 er:", $ 1, "\\ n"; Utgangen er: $ 1 er: mann Det er en gruppe (mann) i matchende mønster. Dette tilsvarer $ 1. Etter utskifting, $ 1 er "mann" og ikke "kvinne".
Så, når du søke og erstatte, holder den interne variable hva er matchet og ikke hva som er erstattet. Jeg har ikke vurdert saken med g modifier. Split Operasjon Det er en operatør som heter Split Operator. Syntaksen er: split /mønster /, string Splitten operatør deler en streng i en liste over under strenger og returnerer listen. Mønsteret er separatoren f.eks komma. Separatoren er ikke en del av de returnerte listen.
Tenk på følgende tilgjengelig strengen: $ availableString = "en to tre"; Hvis vi vet regex mønster for å identifisere mellomrom mellom ord, så kan vi dele denne strengen i en liste satt sammen av ordene, "en", "to" og "tre". Denne listen kan være en matrise. \\ Er tegnet for plass. \\ + Vil matche en plass en eller flere ganger. Regex for å skille de ovenstående ord er /\\ + /Vi antar at plassen kan opprettes ved å trykke på mellomromstasten mer enn én gang. Den følgende kode illustrerer bruken av den delte operatør med ovennevnte mønster.
bruke strenge; min $ availableString = "en to tre"; minewords = split /\\ + /, $ availableString; skrive ut "First Element er:", $ ord [0], "\\ n"; skrive ut "Second Element er:", $ ord [1], "\\ n"; skrive ut "Tredje Element er:", $ ord [2], "\\ n"; I den tilgjengelige streng ordene er atskilt med mellomrom. Utgangen av ovenstående kode er: Først Element er: ett sekund Element er: to tredje Element er: three den sølte Operatøren har delt ordene i den tilgjen
Android aktivi…