Slik bruker regulære uttrykk for å sjekke en streng som er numerisk

Ved hjelp av regulære uttrykk er en effektiv måte å analysere data fra filer, men til en nybegynner kan det være frustrerende. Symbolene og merkelig syntaks lett bli overveldende i komplekse uttrykk. Uansett, læring regulære uttrykk er avgjørende for å være en effektiv systemadministrator. Hvis du trenger å sjekke strenger som er numerisk, kan du opprette et uttrykk for å sjekke hva det er du trenger fra denne strengen, mens hoppe over linjer som ikke inneholder noen tall.

Bruksanvisning

1 Lag en "PL" fil eller åpne en pre-eksisterende.

2 Lag en variabel der du vil lagre resultatet av din vanlige uttrykk. La oss bruke "$ string" som vår variabel. Du kan bruke en hvilken som helst streng du vil sjekkes mot et regulært uttrykk.

3 Lag et vanlig uttrykk for å søke etter tall. Dette gjøres ved hjelp av enten "\ d" eller "[0-9]" hvert vil forsøke å finne ett siffer i strengen. Hvis du bare vil ha et bestemt antall eller nummer rekkevidde, kan du endre tallene. Så hvis du bare ønsket tall 3-6 for eksempel, ville du bruke "[3-6]". Nå legger operatøren "+" for å fange opp tall som har mer enn ett siffer. Ved hjelp av vår variabel, vil det se slik ut:

$ String = ~ m / [0-9] + /;

Hvis strengen inneholder minst ett siffer i alle størrelser, vil den returnere "true". Den "m / /" syntaks bare betegner følgende som et regulært uttrykk.

4 Fang de tallene du trenger ved å legge parentes rundt det regulære uttrykket som vil fange dem. I vårt eksempel, vil vi ta det første tallet funnet i en streng. Ved å sette parentes rundt det, kan vi kalle resultatet av kampen.

$ String = ~ m / ([0-9] +) /;
skrive "Dette er den første kampen: $ 1";

Dette eksempelet vil skrive ut i kampen fant i det første settet med parenteser. Det er mange andre måter å bruke regulære uttrykk for å sjekke numeriske strenger, men de varierer mye, så det kommer an på hva du trenger kontrollert.

Hint

  • Disse regulære uttrykk kan fungere for alle språk som bruker dem, ikke bare Perl. Bare sørg for å sjekke syntaksen i språket du bruker.