*   >> Lezen Onderwijs artikelen >> science >> programming

Regex Groeperingen in Perl

roon kan eigenlijk complex geworden en zou je hetzelfde patroon hebben als hierboven op verschillende plaatsen van een groter patroon. Sub Strings met Afwisseling aan het begin van beschikbaar String in groep Laten we eens kijken naar het geval van sub-snaren met gemeenschappelijke deel waar matching moet gebeuren aan het begin van de beschikbare string. Beschouw het volgende patroon: /(^ x | y) z /metateken ^ Het anker wordt gebruikt om de reguliere expressie passen aan het begin van de beschikbare string.

De bovenstaande patroon past 'XZ' aan het begin van de beschikbare touw of 'YZ' overal in de beschikbare string. De volgende expressies: "xy 5678" = ~ /(^ x | y) z /"34 YZ-56 G" = ~ /(^ x | y) z /Meer over Sub Strings met Common Parts Stel dat u wilt passen "boek" of "boekhouder" of "boekhouders". De sub-string "boek" komt in de drie zinnen (sub strings). De sub-string "boekhouder" vindt plaats in twee van de zinnen; en substring boekhouders optreden bij slechts één van de zinnen.

Ons doel in deze sectie is om een ​​efficiënte patroon sub strings overeenkomen ontwikkelen, zoals de drie bovengenoemde. U kunt dit doen: /boek | boekhouder | boekhouders /Het probleem hier (inefficiëntie) is dat je hoeft te typen "boek" drie keer en je moet "houder" twee keer typen. Het volgende patroon is efficiënt: /boek (keeper (s |) |) /Allereerst is hier rekening mee dat u een geneste groep; groepen kunnen worden genest. Er zijn ook twee afwisseling metacharacters, |; een in een binnenste geneste groep; de andere in de buitenste groep.

In de binnenste geneste groep, Perl heeft om te kiezen tussen "s" of niets. In de buitenste groep, Perl moet nog kiezen tussen "houder (s |)" of niets. "boek" zal altijd worden gekozen. Op deze manier zal Perl match "boeken", "boekhouder" of "boekhouders". De situatie is hier vergelijkbaar met de eerste situatie hierboven, maar is complexer hier. Capturing Matches De groepering metacharacters (), dat wil zeggen, tussen haakjes ook nog een volledig verschillend doel dienen: ze laten de vangst van sub-strings in de beschikbare string die op elkaar afgestemd.

Nou, het patroon is meestal niet een exacte woord of een exacte woordgroep. Nadat de bijpassende opgetreden met de beschikbare reeks, kunt u de exacte woord of een zin in de beschikbare string die gematched was? Ja, kunt u dit te weten, en het is dankzij groepering. Tot 9 groepen in een patroon kan worden herinnerd als matching plaatsvindt. Met andere woorden, kun je weten tot 9 exacte

Page   <<  [1] [2] [3] [4] [5] >>
Copyright © 2008 - 2016 Lezen Onderwijs artikelen,https://onderwijs.nmjjxx.com All rights reserved.