检查字符串是否包含孤立单词



当我在字符串中搜索单词时,我通常会这样做:

CONSTANTS:
lc_word TYPE string VALUE 'TEST',
.
IF ls_structure-name CS lc_word.
"count( ).
ENDIF.

但这一次,我只希望这个词是孤立的、区分大小写的
例如:

  • TESTerTest不应计数
  • TESTlol TESTTEST yourselfhi TEST yourself应计数

有人知道怎么做吗?

您可以使用正则表达式检查:

FIND REGEX '(s|^)TEST(s|$)' IN ls_structure-name.
IF sy-subrc EQ 0.
"count( ).
ENDIF.

它检查以下模式:

  • 空白或字符串的开头
  • "测试">
  • 空白或字符串末尾

您可以将句子拆分成表格,然后检查它是否存在于tale中。像这样:

DATA: lv_string TYPE string VALUE 'One two TEST three',
lv_var    TYPE string VALUE 'TEST',
lv_count  TYPE i.

SPLIT lv_string AT space INTO TABLE DATA(lt_string).
IF line_exists( lt_string[ table_line = lv_var ] ).
lv_count = lv_count + 1.
ENDIF.
WRITE: / lv_count.

相关内容

  • 没有找到相关文章

最新更新