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

To find the position of character in a given string


IBM Mainframe Forums -> COBOL Programming
Post new topic   Reply to topic
View previous topic :: View next topic  
Author Message
bamohan

New User


Joined: 29 Jan 2007
Posts: 33
Location: chennai

PostPosted: Fri Nov 28, 2008 12:58 pm
Reply with quote

Can someone please help in finding out the position where the phrase is encountered in the text.

for examle : Mainframe Forum is very useful for programming.

Here i need to know the position where the word programming is appeared. This word can occur at different position dynamically based on the input text.

Thanks.
Back to top
View user's profile Send private message
Cristopher

New User


Joined: 31 Jul 2008
Posts: 53
Location: NY

PostPosted: Fri Nov 28, 2008 1:29 pm
Reply with quote

Hi, you can try this:
Code:

01 MATCH-STATUS   PIC X(1) VALUE 'N'.
   88 NO-MATCH             VALUE 'N'.
   88 MATCH-FOUND          VALUE 'Y'.

PERFORM UNTIL Z = LENGTH OF A OR MATCH-FOUND   
COMPUTE Z = Z + 1                             
IF A(Z:11) = 'PROGRAMMING'                           
SET MATCH-FOUND  TO TRUE                       
MOVE Z TO K                                 
END-IF                                         
END-PERFORM                                   
DISPLAY " VALUE OF K :" K

Hope this helps

Cris
Back to top
View user's profile Send private message
bamohan

New User


Joined: 29 Jan 2007
Posts: 33
Location: chennai

PostPosted: Fri Nov 28, 2008 2:44 pm
Reply with quote

Thanks Chris..

Do you have any idea of the below ?

Is there any way we can do the same logic with INSPECT or STRING / UNSTRING command.. I'm trying out with UNSTRING WITH POINTER but it seems doesnt working.
Back to top
View user's profile Send private message
Arun Raj

Moderator


Joined: 17 Oct 2006
Posts: 2481
Location: @my desk

PostPosted: Fri Nov 28, 2008 3:03 pm
Reply with quote

Quote:
Can someone please help in finding out the position where the phrase is encountered in the text.
bamohan,

If you want to know the position of initial occurrence of a string, you can try this.
Code:
----+----1----+----2----+----3----+----4----+--
MAINFRAME FORUM IS VERY USEFUL FOR PROGRAMMING.

Code:
     05  I                               PIC  9(02)       
                       VALUE   0.                         
     05  STRING-1                        PIC  X(80)       
                       VALUE                               
         'MAINFRAME FORUM IS VERY USEFUL FOR PROGRAMMING.'.
                                                           
***********************************************************
 PROCEDURE DIVISION.                                       
***********************************************************
                                                           
 0000-MAIN-PARA.                                           
          INSPECT STRING-1 TALLYING I FOR CHARACTERS       
                  BEFORE INITIAL 'PROGRAMMING'             
          COMPUTE I = I + 1                               
          DISPLAY 'I :' I       

SYSOUT
Code:
I :36
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 -> COBOL Programming

 


Similar Topics
Topic Forum Replies
No new posts Replace each space in cobol string wi... COBOL Programming 3
No new posts PARSE Syntax for not fix length word ... JCL & VSAM 7
No new posts INCLUDE OMIT COND for Multiple values... DFSORT/ICETOOL 5
No new posts Sortjoin and Search for a String and ... DFSORT/ICETOOL 1
No new posts To find whether record count are true... DFSORT/ICETOOL 6
Search our Forums:

Back to Top