当前位置:

abap 字符串里找到最后一次出现的指定字符位置和amp;长度

访客 2024-01-05 389 0

*这里找的是¥最后一次出现的位置

DATAtextTYPEstring.
DATAresult_tabTYPEmatch_result_tabWITHHEADERLINE.
DATALDS_RESULTTYPEMATCH_RESULT.
DATALDF_INDEXTYPEI.

text=`C:\Users\lofn\Desktop\TEST`.

FINDALLOCCURRENCESOFREGEX'(?:\\)'
INtextRESULTSresult_tab[].

LDF_INDEX=lines(result_tab).

READTABLEresult_tabINTOLDS_RESULTINDEXLDF_INDEX.

WRITE:/LDS_RESULT-offset,LDS_RESULT-length.

*结果:211

*-----------------------------------------------------------------------------------------------

*循环的方法也可以

*-----------------------------------------------------------------------------------------------

DATA:LDF_TEXTTYPESTRING,
LDF_LONGTYPEI,
LDF_NUMTYPEI,
LDF_TLOCTYPEI,
LDF_TLONTYPEI.

LDF_TEXT='C:\Users\lofn\Desktop\TEST'.
LDF_LONG=STRLEN(LDF_TEXT).
LDF_NUM=LDF_LONG-1.

IFLDF_TEXTLDF_NUM(1)='\'.
LDF_TLOC=LDF_NUM.
LDF_TLON=1.
ELSE.

DOLDF_LONGTIMES.
CLEAR:LDF_NUM.
LDF_LONG=LDF_LONG-1.

IFLDF_LONG<=0.
LDF_TLON=0.
EXIT.
ENDIF.

LDF_NUM=LDF_LONG-1.

IFLDF_TEXTLDF_NUM(1)='\'.
LDF_TLOC=LDF_NUM.
LDF_TLON=1.
EXIT.
ENDIF.
ENDDO.
ENDIF.

WRITE:LDF_TLOC,LDF_TLON.

*结果:211(在这里长度只是判断字符是否存在)

发表评论

  • 评论列表
还没有人评论,快来抢沙发吧~