|
|||
|
JavaScript.nu
/
Perl-kurs
/
Sök och ersätt i strängar
Detta har flera likheter med hur man söker genom strängar, så du kommer att få använda dina kunskaper från föregående kapitel när du börjar med detta kapitel. #!/usr/bin/perl print "Content-type:text/html\n\n"; $saga="Mors lilla olle i skogen gick."; $antalL=($saga =~ s/l/L/g); print "I vår saga fanns $antalL l.\n"; print "Sagan är nu:\n"; print "$saga"; Utmatning: I vår saga fanns 5 l. Sagan är nu: Mors LiLLa oLLe i skogen gick.Som du ser är returvärdet till skillnad från sökningarna vi tidigare gjort inte sant (1) eller falskt (''), nu är det istället antalet utbytningar som gjorts. Även nu kan vi använda oss av de "specialtecken" vi tidigare lärt oss, så som punkt (.), plus (+), asterix (*) etc. Nedan visar jag några exempel så du ska kunna se hur detta fungerar. Jag har gett exempel på hur strängen $str ändras om man har olika värden på det man söker efter och det som man ersätter detta med. Jag har även skrivit ner hur många ersättningar det totalt blir.
Tänk också på att när jag skrivit ett \X (X = ett tecken) nedan så symboliserar
det inte ett backslash följt av tecknet jag angett, utan det symboliserar det tecken
som detta motsvarar. Exempel:
För att du ska se vad som är vad i tabellen nedan kan du jämföra kolumnernas
rubriker med raden neda.
Kolla noga på alla exemplen och försök förstå vad som hänt i vart och varje fall. Som du ser används en hel del specialtecken från föregående kapitel. Minns du inte vad de olika tecknena symboliserade, öppna kapitel 11 i ett nytt fönster och kolla där. Som du ser är detta ett ytterst kraftfullt verktyg i Perl och du kommer med största sannolikhet få stor användning av det, oavsett vad för sorts script du har planerat att skapa.
Innan detta kapitel tar slut ska jag påminna dig om att du
precis som när du sökte i förra kapitlet kan välja att du
ska göra sökningen utan att skillnad tas till STOR och liten bokstav.
Du lägger då bara till ett "i" efter tredje slashet.
Dvs, istället för...
Vill du bara ersätta första exemplaret av sökEfter i $str (till skillnad från vad vi hittills gjort, att ersätta alla sökEfter som hittas i $str), ta då bort det "g" som vi nu haft efter tredje slashet. Tas detta bort görs bara en ändring (det första sökEfter ersätts med ersättMed). Ja, då var denna Perl-kurs avslutad. Om du vill veta när nya delar kommer, registrera dig för JavaScript.nu's nyhetsbrev (skickas ut ca 6 gånger om året). Sist men inte minst vill jag påminna om att övning ger färdighet. Det bästa sättet att lära sig Perl är att tänka ut ett script man vill ha och sedan skapa det. Vartefter som kommer du att lära dig mer och mer om hur du gör effektiva och lätt justerbara script som på bästa sätt löser olika problem, vilket i sig är lika svårt som själva språket Perl. Lycka till! Copyright © Omid Rouhani 1997-2022; Alla rättigheter reserverade. Guider: [ HTML guide ] - [ JavaScript guide ] - [ DHTML guide ] - [ Perl guide ] - [ Sitemap ] |