← Back to team overview

sslug-teknik team mailing list archive

regulære udtryk og mig....

 

Vi er altså ikke de bedste venner.
(mere kyniske fokk vil nok bare mene at jeg aldrig har taget mig sammen
til at lære det for alvor.)

Jeg har brug for at kunne ændre lidt i en installations-cd. HBA-drivere
skal væk, og jeg skal kunne lægge en special-konfiguration til brug ved
unattended install direkte på cd'en.

Det er ikke spor svært, men når jeg skal automatisere det kommmer jeg
til kort.

jeg har fx en fil der indeholder dette:
<start>
106b  Apple Computer Inc.
        1645  Tigon3 Gigabit Ethernet NIC (BCM5701)
1077  QLogic Corp
        1216  ISP12160 Dual Channel Ultra3 SCSI Processor
        2200  QLA2200
        2300  QLA2300 64-bit FC-AL Adapter
        2312  QLA231x/2340
        2322  QLA236x
        2400  QLA2400
        2422  QLA2422
        2432  QLA2432
        4010  QLA4010
        4022  QLA4022
        6312  QLA200
        6322  QLA210
10c3  Samsung Semiconductors, Inc.
        1100  Smartether100 SC1100 LAN Adapter (i82557B)
</slut>

Jeg vil frygtelig gerne kunne fjerne afsnittet om QLogic, dvs disse linier:
<linier>
1077  QLogic Corp
        1216  ISP12160 Dual Channel Ultra3 SCSI Processor
        2200  QLA2200
        2300  QLA2300 64-bit FC-AL Adapter
        2312  QLA231x/2340
        2322  QLA236x
        2400  QLA2400
        2422  QLA2422
        2432  QLA2432
        4010  QLA4010
        4022  QLA4022
        6312  QLA200
        6322  QLA210
</linier>

Opgaven er faktisk ret nem:
Find en linie der indeholder strengen "QLogic" og starter på position 0
Slet denne linie og alle efterfølgende linier, der ikke starter på
position 0.
Stop når der rammes en linie der igen starter på position 0. (Denne
linie må ikke slettes.)

Man kunne jo bikse et perl-script sammen til formålet, men kan det ikke
gøres smartere?

/kristian


Follow ups