Я пытаюсь сравнить следующие строки с регулярным выражением:
@[xyz="1","2"'"4"] ------- valid
@[xyz] ------------- valid
@[xyz="a5","4r"'"8dsa"] -- valid
@[xyz="asd"] -- invalid
@[xyz"asd"] --- invalid
@[xyz="8s"'"4"] - invalid
Допустимый шаблон должен быть:
@[xyz
затем =
, затем несколько символов, затем ,
, затем несколько символов, затем '
, затем несколько символов и, наконец, ]
.Это означает, что если после xyz
есть символы, то они должны быть в формате ="XXX","XXX"'"XXX"
. - или только
@[xyz]
.Никаких символов после xyz
.
Я попробовал следующее регулярное выражение, но оно не сработало:
String regex = "@[xyz=\"[a-zA-z][0-9]\",\"[a-zA-z][0-9]\"'\"[a-zA-z][0-9]\"]";
Здесь приведены цитаты (частично после xyz)Необязательный, и количество символов между кавычками также не является фиксированным, а также может быть несколько символов до и после этого шаблона, например asdadad @[xyz] adadad
.