Образцу регулярного выражения не нужны все якоря начала / конца строки. ^(R_1A|R_2A|R_3A|R_4A|R_4B|R_5A|R_5B)$
будет работать так же хорошо.
На самом деле: если токены поиска действительно такие же, как в примере, можно воспользоваться этим с помощью ^(R_[1-5]A|R_[4-5]B)$
или ^(R_([1-5]A|[4-5]B))$
(для части строки поиска, указанной в вопросе).
Проверено в 11.2:
SELECT i, t FROM (
SELECT 1 i, 'R_1A' t FROM DUAL UNION ALL
SELECT 2, 'xR_2A' FROM DUAL UNION ALL
SELECT 3, 'R_3Ax' FROM DUAL UNION ALL
SELECT 4, 'xR_4Ax' FROM DUAL UNION ALL
SELECT 5, 'R_4B' FROM DUAL UNION ALL
SELECT 6, 'R_5A' FROM DUAL UNION ALL
SELECT 7, 'R_5B' FROM DUAL)
--WHERE REGEXP_LIKE(t, '(^R_1A$|^R_2A$|^R_3A$|^R_4A$|^R_4B$|^R_5A$|^R_5B$)')
--WHERE REGEXP_LIKE(t, '^(R_1A|R_2A|R_3A|R_4A|R_4B|R_5A|R_5B)$')
--WHERE REGEXP_LIKE(t, '^(R_[1-5]A|R_[4-5]B)$')
WHERE REGEXP_LIKE(t, '^(R_([1-5]A|[4-5]B))$')
ORDER BY i;