Вы могли бы просто пропатчить свое текущее регулярное выражение, правильно экранируя \\)
с двумя обратными слешами, но я думаю, что классы символов легче читать здесь:
String regx = "^[;:][~-]?[D)]$";
Обратите внимание, что Java регулярное выражениешаблоны не принимают разделители, как в других языках, таких как PHP или Python, поэтому я удалил их из вашего шаблона.Кроме того, если вы хотите использовать вышеуказанный шаблон с некоторыми методами, такими как String#matches
, вы можете удалить привязки ^
и $
.