View previous topic :: View next topic
|
Author |
Message |
bamohan
New User
Joined: 29 Jan 2007 Posts: 33 Location: chennai
|
|
|
|
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 |
|
|
Cristopher
New User
Joined: 31 Jul 2008 Posts: 53 Location: NY
|
|
|
|
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 |
|
|
bamohan
New User
Joined: 29 Jan 2007 Posts: 33 Location: chennai
|
|
|
|
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 |
|
|
Arun Raj
Moderator
Joined: 17 Oct 2006 Posts: 2481 Location: @my desk
|
|
|
|
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
|
|
Back to top |
|
|
|