文字のみを受け入れる必要がある入力フィールドがあります (小文字か大文字かは関係ありません)。これは、co ca (contains only/any) 演算子を使用して簡単に記述できます。しかし、それは時間がかかります。
if p_input3 ca '*/ + - ? ! % ( ) = 0123456789'.
MESSAGE e000 WITH 'Only letters are allowed. No numbers or special characters'.
ENDIF.
できます。しかし、正規表現を使用して確認したかったのです。このコードを試しました。しかし、うまくいきません。
DATA: text TYPE string,
matcher type REF TO cl_abap_matcher.
PARAMETERS: p_input3 TYPE string DEFAULT 'abCD*()fhi' LOWER CASE.
matcher = cl_abap_matcher=>create(
pattern = `([a-zA-Z])`
text = p_input3
).
if matcher = abap_true.
MESSAGE e000 with 'Only letters are allowed. No numbers or special characters'.
ENDIF.
誰でもそれを理解できますか?