Mit sidste tip på engelsk handlede om brugen af regular expressions i ISPF EDIT/VIEW FIND kommandoen. I tippet henviser jeg frejdigt til, at du sandsynligvis kender til brugen af picture strings i FIND. Men i løbet af de sidste to uger har jeg tænkt, at det kunne jo være, at dette emne lige skal uddybes. Især fordi picture strings også virker i BROWSE.
Den mest kendte picture string er sandsynligvis P'.', da ISPF EDIT/VIEW foreslår at benytte denne picture string til at finde ikke-displaybare tegn, når det dataset/member, du er gået i EDIT/VIEW på, indeholder sådanne tegn. I en picture string kan du benytte en række special-tegn til at repræsentere en hel klasse af tegn. Den mest omfattende klasse er = som dækker alle tegn. Jeg bruger nogen gange FIND P'=' ALL til at finde ud af, hvor mange tegn, der er i et VB dataset, men i et FB dataset giver den ikke helt mening, da antallet af tegn altid er LRECL * linieantal.
Den næste klasse af tegn er ^ som dækker over alle ikke-blanke tegn. Jeg anvender ofte kommandoen CHANGE P'^' ' ' ALL fra-pos til-pos til at blanke dele af et dataset/member ud. FIND P'.' benytter jeg ikke så tit, kun når der af uransagelige årsager sniger sig ikke-displaybare tegn ind i et dataset/member, hvor der ikke skulle være sådanne tegn.
Mere avancerede anvendelser er specialtegnene for alfabetisk tegn, numeriske tegn og specialtegn, hhv. Ø, Æ og Å, hvis du arbejder på en installation med dansk EBCDIC setup. Hvis du er i tvivl om dissse tegn, så kan du altid gøre følgende: 1. Skriv FIND i kommando-feltet uden parametre, 2. Tryk Enter, 3. Tryk HELP (F1) to gange, 4. Vælg punkt 3. Så får du en liste over og en beskrivelse af de forskellige special-tegn i picture strings.
For nylig havde jeg brug for at finde alle de linier, der indeholdt et datasetnavn med en D99 qualifier, for eksempel MYUSER.D17.SOMEDATA. Jeg benyttede FIND P'ÅDÆÆÅ' til opgaven. Å repræsenterede punktummerne, D repræsenterede D, da alle alfanumeriske tegn bare er sig selv i en picture string, og Æ repræsenterede de to cifre. En anden snedighed ved picture strings er, at de kan også bruges i CHANGE. Antag, at jeg gerne vil udskifte D med X i ovennævnte quailfier, men uden at ændre de to cifre eller punktummerne. Det kan jeg gøre med CHANGE P'ÅDÆÆÅ' P'=X===' ALL, hvor styrken i = klassen kommer til sin ret. Picture strings er et stærkt værktøj, som jeg håber, du kan finde glæde af fremover.