IBM Mainframe Forum Index
 
Log In
 
IBM Mainframe Forum Index Mainframe: Search IBM Mainframe Forum: FAQ Register
 

How to get the right string from Variable using PARSE VAR ?


IBM Mainframe Forums -> CLIST & REXX
Post new topic   Reply to topic
View previous topic :: View next topic  
Author Message
jackzhang75

Active User


Joined: 09 Jun 2014
Posts: 119
Location: CT

PostPosted: Mon Nov 16, 2015 10:04 pm
Reply with quote

Hi experts,

I want to get only 2015.317 from following variable like
Code:
"A=DATASET-OWNER-----(NULL)     CREATION--------2015.317"

How to use
Code:
PARSE VAR
to get right word you want like in this case
2015.317 ? Thanks
Back to top
View user's profile Send private message
enrico-sorichetti

Senior Moderator


Joined: 14 Mar 2007
Posts: 10729
Location: italy

PostPosted: Mon Nov 16, 2015 10:30 pm
Reply with quote

Code:
a = "DATASET-OWNER-----(NULL)     CREATION--------2015.317"

parse var a with . "CREATION--------" crdate .

say crdate
Back to top
View user's profile Send private message
RahulG31

Active User


Joined: 20 Dec 2014
Posts: 446
Location: USA

PostPosted: Mon Nov 16, 2015 10:38 pm
Reply with quote

You can also know this if you know the starting position of date:
Code:
 A = "DATASET-OWNER-----(NULL)     CREATION--------2015.317"
 PARSE VAR A 46 CRDATE
 SAY CRDATE
Back to top
View user's profile Send private message
jackzhang75

Active User


Joined: 09 Jun 2014
Posts: 119
Location: CT

PostPosted: Mon Nov 16, 2015 11:31 pm
Reply with quote

Thank you expters , thats work perfect
Back to top
View user's profile Send private message
jackzhang75

Active User


Joined: 09 Jun 2014
Posts: 119
Location: CT

PostPosted: Tue Nov 17, 2015 12:02 am
Reply with quote

Another question , how to split 2015.317 into two varible ? one for 2015 as YEAR one for 317 as Date ?
Back to top
View user's profile Send private message
RahulG31

Active User


Joined: 20 Dec 2014
Posts: 446
Location: USA

PostPosted: Tue Nov 17, 2015 12:39 am
Reply with quote

If you understand the above 2 methods then it should be really simple. What method are you using ?
Back to top
View user's profile Send private message
Nic Clouston

Global Moderator


Joined: 10 May 2007
Posts: 2455
Location: Hampshire, UK

PostPosted: Tue Nov 17, 2015 8:32 pm
Reply with quote

As that line is fixed format you could have used SUBSTR.
Read the manual about PARSE.
Back to top
View user's profile Send private message
Marso

REXX Moderator


Joined: 13 Mar 2006
Posts: 1348
Location: Israel

PostPosted: Tue Nov 17, 2015 9:00 pm
Reply with quote

There are many ways:
Code:
CreationDate = Right(Strip(A),8)
Back to top
View user's profile Send private message
Willy Jensen

Active User


Joined: 01 Sep 2015
Posts: 419
Location: Denmark

PostPosted: Thu Nov 19, 2015 1:31 am
Reply with quote

you could also do
dv=word(translate(var,' ','-'),5)
yes I know you asked for PARSE
Back to top
View user's profile Send private message
Willy Jensen

Active User


Joined: 01 Sep 2015
Posts: 419
Location: Denmark

PostPosted: Thu Nov 19, 2015 1:59 am
Reply with quote

or with parse, as there is only one dot in the string:
parse var v . '.' -4 dv +8 .
Back to top
View user's profile Send private message
View previous topic :: :: View next topic  
Post new topic   Reply to topic View Bookmarks
All times are GMT + 6 Hours
Forum Index -> CLIST & REXX

 


Similar Topics
Topic Forum Replies
No new posts How to replace a string dynamically i... CLIST & REXX 16
No new posts Control M features to check string in... Compuware & Other Tools 0
No new posts FILE STATUS - 39 ON VARIABLE LENGTH V... COBOL Programming 2
No new posts Need to split single line into two li... DFSORT/ICETOOL 7
No new posts Unable to display comp variable COBOL Programming 4
Search our Forums:

Back to Top