03-06-2009 7:46 PM
Hi Experts,
I have string. I need to capture the last few characters of string.
Last characters has fixed different lengths.
for example:
1) 123_344_hhhsj.
2) hh_jj_kklkikk
In two cases I need to captute hhhsj and kklkikk.
Any ideas.
Thankyou In advance.
Thanks
Reddy.
Edited by: Reddy on Mar 6, 2009 1:57 PM
03-06-2009 8:30 PM
Try this.
Data: w_input TYPE string VALUE 'hh_jj_kklkikk'.
Data: w_part1 type string.
Data: w_part2 type string.
Data: w_part3 type string.
Split w_input at `_`
into w_part1 w_part2 w_part3.
write: `3rd part of string = `, w_part3.
03-06-2009 8:15 PM
hi,
Check this code. This works as per your requirement.
Report ZTEST.
DATA:
w_str TYPE string VALUE 'hh_jj_kklkikk',
w_len TYPE i,
w_fdpos TYPE i.
w_len = STRLEN( w_str ).
SUBTRACT 1 FROM w_len.
DO.
IF w_str+w_len(1) EQ '_'.
EXIT.
ENDIF.
ADD 1 TO w_fdpos.
SUBTRACT 1 FROM w_len.
ENDDO.
ADD 1 TO w_len.
WRITE:
w_str+w_len(w_fdpos).
Thanks
Sharath
03-06-2009 8:23 PM
REPORT zstring.
DATA: str type string value '123_344_hhhsj',
str1 TYPE string,
str2 type string.
DO.
FIND '_' in str.
IF sy-subrc EQ 0.
SPLIT str at '_' INto str1 str.
ELSE.
WRITE: str.
EXIT.
ENDIF.
ENDDO.
Try this code.
03-06-2009 8:30 PM
Try this.
Data: w_input TYPE string VALUE 'hh_jj_kklkikk'.
Data: w_part1 type string.
Data: w_part2 type string.
Data: w_part3 type string.
Split w_input at `_`
into w_part1 w_part2 w_part3.
write: `3rd part of string = `, w_part3.
03-06-2009 9:34 PM
Hi check this code:
DATA:
w_str(13) TYPE c VALUE 'hh_jj_123457',
w_1 TYPE string, w_2 TYPE string, w_count TYPE i.
CALL FUNCTION 'STRING_REVERSE'
EXPORTING
string = w_str
lang = 'E'
IMPORTING
rstring = w_str
EXCEPTIONS
too_small = 1
OTHERS = 2.
DO.
w_1 = w_str+w_count(1).
IF w_1 = '_'.
WRITE: w_2.
EXIT.
ENDIF.
CONCATENATE w_1 w_2 INTO w_2.
w_count = w_count + 1.
ENDDO.
output: 123457
07-20-2011 9:03 AM