Hoe te vervangen symbolen Regex

Hoe te vervangen symbolen Regex


Zwoegen in het donker terwijl het maken van een groot deel van de internetwereld going propositie, reguliere expressies zijn de onbezongen held van de informatietechnologie. overal gevonden van scripts dienen webpagina's aan bioinformatica om uw nederige tekstverwerkingsprogramma, reguliere expressies helpen beheerders en programmeurs te temmen, de vorm en de controle van grote hoeveelheden gegevens met weinig inspanning. De syntaxis van reguliere expressies is een uitdaging. Terwijl ze in de eerste plaats de taal manipulators, reguliere expressies lijken niets op een natuurlijke taal.

instructies

1 Bereid een tekstbestand door het kopiëren van een werk in het publieke domein in een tekstbestand. Sla het bestand met de naam "regextest1" met de ".txt" achtervoegsel in uw documenten map (of map) in een nieuwe map met de naam "RegExTests."

2 Start een console-sessie als u gebruik maakt van Windows; start een terminal sessie als u gebruik maakt van Mac OS X. Type "perl -v" in de command line prompt om de aanwezigheid van Perl op uw systeem en de versie te controleren.

3 Typ het volgende op de opdrachtregel en druk op de "Enter" toets:

perl -e "s /./ PERIODE / g;" -pi.save $ (Zoek Documents / RegExTests -type f)

Dit commando zal elk document te openen in de directory RegExTests, opent u het elke optreden van een periode met het woord PERIODE vervangen en sla het bewerkte document.

Aangezien de periode is een metateken in reguliere expressies, om een ​​"letterlijke" -periode, moet u gebruik maken van de escape-symbool te vinden "." Met het oog op deze symbolen te vinden, $ ()

+ [\ ^ {|, je moet ze ontsnappen met het escape-teken, \.? \ $ () \ +. ? \ [\\ ^ {\ |.

4 Vervang de dollar symbool "$" met het woord dollar (of een woord dat je wilt) met de volgende Perl-script:

perl -e "s / \ $ / DOLLAR / g;" -pi.save $ (Zoek Documents / RegExTests -type f)

Dit zal elk document openen in de directory, vinden elk voorkomen van het dollarteken en te vervangen door het woord DOLLAR. Als u alleen wilt zoeken en vervangen in een document, kunt u het script te herschrijven als:

perl -e "s / \ $ / DOLLAR / g;" -pi.save $ (Zoek Documents / RegExTests / regextest1.txt -type f)

Hints

  • Veel tekstverwerking en webpagina creatie applicaties hebben reguliere expressie mogelijkheden die u in staat om te zoeken en symbolen te vervangen als hierboven, maar met kleine variaties in de syntaxis van de reguliere expressie. Controleer het helpmenu van uw aanvraag voor meer informatie.
  • Oefen met tekstdocumenten die u maakt voor het doel van het leren en het testen van reguliere expressies. testen nooit reguliere expressies als de root gebruiker. Je zou kunnen ernstige schade doen om uw besturingssysteem, waarvoor herinstallatie van het besturingssysteem en het verlies van gegevens en toepassingen.