The FEX (Find EXpression) command, which is part of the extended edit features 
in SimpList, further enhances the power of picture strings. For example, square 
brackets can be used to signify an exact match on any ONE of the bracketed 
characters, as shown in this example: 

FEX gr[ae]y        Finds the next line containing 'gray' or 'grey'
FEX b[aiu]g        Finds any of the following strings:   bag   Bag   baG   BaG  
 big   Big   biG   BiG   bug   Bug   buG   BuG  

The ability to use square brackets means that picture string characters can be 
'escaped out'. In other words, picture string characters can represent a group 
of characters or the actual literal character, as shown by this example:
  
FEX #[#]# 

This command finds any numeric character followed by a number sign followed by 
any other numeric character; e.g. '7#3'. If the second number sign hadn't been 
enclosed in brackets it would have been treated as a picture string character 
and therefore would have found any 3 consecutive numbers; e.g. '526'.  As 
another example:

FEX A=#          Finds 'A' followed by any character followed by any number; 
e.g. 'A+7'

FEX A[=]#       Finds 'A' followed by an equal sign followed by any number; 
e.g. 'A=7'.

 
Dave Salt

SimpList(tm) - try it; you'll get it! 

http://www.mackinney.com/products/program-development/simplist.html  





> Date: Wed, 18 Jul 2012 13:48:10 -0700
> From: stars...@mindspring.com
> Subject: Re: REXX ISPF edit FIND failing
> To: IBM-MAIN@LISTSERV.UA.EDU
> 
> FYI.  From ISPF You can see that Picture Strings are powerful
> 
> A picture string is a quoted string that is preceded or followed by the      
> letter "P".  It can contain blanks, alphabetic and numeric characters        
> which represent themselves, or any of the special characters listed          
> below, each of which represents a class of characters.                       
> The special characters that can be used in a "from" picture string are:      
>     =  - any character                 .
> - invalid characters               
>     @  - alphabetic characters         -  - non-numeric characters           
>     #  - numeric characters            <  - lower case alphabetics           
>     $  - special characters            >  - upper case alphabetics           
>     ¬  - non-blank characters                                                
> The special characters that can be used in a "to" picture string are:        
>     =  - any character                 <  - lower case alphabetics           
>     >  - upper case alphabetics                                              
>                         (continued on next page)                             
> 
> 
> Lizette
> 
> -----Original Message-----
> >From: John Mattson <john_matt...@ea.epson.com>
> >Sent: Jul 18, 2012 1:33 PM
> >To: IBM-MAIN@LISTSERV.UA.EDU
> >Subject: Re: REXX ISPF edit FIND failing
> >
> >While I am at it... 
> >WHY the Ampersand "&SYSTEM"  WORKS in the find, 
> >but if you use &PDQR rather than $PDQR  it fails .... is just madness. 
> >7 *-* "ISREDIT F ALL P'DISP=SHR,DSN=MSYS$UCMD$REMOTE$PDQR$(&SYSTEM$' " 
> >  >L>   "ISREDIT F ALL P'DISP=SHR,DSN=MSYS$UCMD$REMOTE$PDQR$(&SYSTEM$'   " 
> > 
> >
> >8 *-* "ISREDIT F ALL P'DISP=SHR,DSN=MSYS$UCMD$REMOTE&PDQR$(&SYSTEM$' " 
> >  >L>   "ISREDIT F ALL P'DISP=SHR,DSN=MSYS$UCMD$REMOTE&PDQR$(&SYSTEM$'   " 
> > 
> >  +++ RC(4) +++  
> >
> >
> >
> >From:   John Mattson/Epson
> >To:     IBM Mainframe Discussion List <IBM-MAIN@LISTSERV.UA.EDU>
> >Date:   07/18/2012 01:26 PM
> >Subject:        Re: REXX ISPF edit FIND failing
> >
> >
> >Thanks to everyone!  I have kept plugging at this and tried all your 
> >suggestions. 
> >Here is what I see so far. 
> >1) There is no reason syntactically that this should not work 
> >"ISREDIT F ALL 'DISP=SHR,DSN=MSYS.UCMD.REMOTE&PDQR.(&SYSTEM)'        " 
> >
> >2) For some strange reality THIS works 
> >"ISREDIT F FIRST 'DISP=SHR,DSN=MSYS.UCMD.REMOTE&PDQR.'                "
> >and this does not.. as soon as you add the "("
> >"ISREDIT F FIRST 'DISP=SHR,DSN=MSYS.UCMD.REMOTE&PDQR.('               "
> >
> >3) Lizette's P' processing can be made to work (but really should not be 
> >necessary)
> >"ISREDIT F ALL P'DISP=SHR,DSN=MSYS$UCMD$REMOTE$PDQR$(&SYSTEM'        " 
> >Works !!! 
> >"ISREDIT F ALL P'DISP=SHR,DSN=MSYS$UCMD$REMOTE$PDQR$(&SYSTEM$'       " 
> >Works 
> >"ISREDIT F ALL P'DISP=SHR,DSN=MSYS$UCMD$REMOTE$PDQR$(&SYSTEM)'       " 
> >Does NOT 
> >
> >        Now, why "(" causes the ISREDIT FIND to go nuts, but not the 
> >ISREDIT FIND P' ' is quite beyond me.
> >        And why ")" causes ISREDIT FIND P' to go nuts, but NOT "(" is also 
> >
> >
> >Thanks to all, I now have something that works, sort of, but there is 
> >really something wrong with ISPF here. 
> >by the by, I am on zOS 1.11 
> >
> >
> >
> 
> ----------------------------------------------------------------------
> For IBM-MAIN subscribe / signoff / archive access instructions,
> send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN
                                          
----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN

Reply via email to