ABAP 选择屏幕中如何判断select-option中限定的值

选择屏幕定义select-option时,
需要判断是否只有某三个值,例如1.5.10
从而继续下面逻辑,
目前想到的方法是:
IF S_sel-low CN ‘1’‘5’‘10’
OR S_sel-high CN ‘1’‘5’‘10’.

ENDIF.
只能确保框里不可输其他值,
但BT (5.10)的情况还不能排除,
该当如何,请各位帮帮忙,一直没有查到合适解法

“Devil组”引证GPT后的撰写:
用FIND方法来检查select-option是否包含指定的值。

以下是一个示例代码,可以检查S_sel-low和S_sel-high是否包含1、5、10中的一个或多个值:

IF sy-subrc = 0.
  DATA(lv_value) = '1,5,10'.
  DATA(lv_position) = 0.

  WHILE lv_position >= 0.
    FIND FIRST OCCURRENCE OF ',' IN lv_value MATCH OFFSET lv_position.
    IF sy-subrc = 0.
      DATA(lv_substring) = lv_value+1(lv_position-1).
    ELSE.
      DATA(lv_substring) = lv_value+1.
    ENDIF.

    IF S_sel-low CP lv_substring OR S_sel-high CP lv_substring.
      " S_sel-low 或 S_sel-high 中包含指定值
      ...
      EXIT.
    ENDIF.

    lv_value = lv_value+lv_position+1.
  ENDWHILE.

ENDIF.



将要检查的值设置为"1,5,10",然后使用FIND方法循环查找这个值中的每个子字符串。如果S_sel-low或S_sel-high包含任何一个子字符串,将继续执行下一步逻辑。

这个方法可以有效地检查select-option中是否包含指定的值,包括BT(5.10)的情况。