Это звучит как хороший пример использования регулярных выражений.В частности, регулярные выражения позволяют сопоставлять диапазон символов - [A-Z{}]
будет соответствовать любому символу, который является либо заглавной буквой, либо {
, либо }
.
РЕДАКТИРОВАТЬ по новым требованиям - вы хотите сопоставить что-то, что начинается с литерала {
, затем имеет хотя бы один символ в диапазоне A-Z
, затем закрывающий }
.Что дает регулярное выражение:
{[A-Z]+}
Таким образом, вы можете сопоставить все регулярное выражение:
val input = "{VARIABLE}"
return input.test(/{[A-Z]+}/) // returns true
"{VARiABLE}".test(/{[A-Z]+}/) // returns false
"{ VARIABLE}".test(/{[A-Z]+}/) // returns false
"".test(/{[A-Z]+}/) // returns false - open bracket didn't match
"{}".test(/{[A-Z]+}/) // returns false - A-Z part didn't match