*   >> Lese Utdanning Artikler >> science >> programming

Ved hjelp av regulære uttrykk i Perl

rukt. Utgangen er: Jeg er en kvinne. Du er en mann. Uten den globale modifier, matching og /eller erstatning alltid påvirke den første forekomsten. Den andre mannen i den tilgjengelige strengen er ikke blitt erstattet. Med den globale (g) modifier alle de samsvarunder strengene blir erstattet. Følgende kode illustrerer dette: bruke strenge; min $ availableString = ". Jeg er en mann Han er en mann."; $ availableString = ~ s /mann /kvinne /g; print $ availableString; Utgangen er: Jeg er en kvinne. Han er en kvinne.

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

Page   <<  [1] [2] [3] [4] >>
Copyright © 2008 - 2016 Lese Utdanning Artikler,https://utdanning.nmjjxx.com All rights reserved.