У меня есть регулярное выражение, где
%word% can occur multiple times, separated by a "<"
% word% определяется как ".*?"|[a-zA-Z]+
так что я написал
(".*"|[a-zA-Z]+)([<](".*"|[a-zA-Z]+))*
Можно ли как-нибудь сжать его с помощью групп захвата?
(".*"|[a-zA-Z]+)([<]\1)*,
Но я не думаю, что можно использовать \1
, поскольку это означало бы повторение первого захвата, поскольку я не знал бы, что было захвачено, поскольку это может быть строка в кавычках или слово.
Любая похожая вещь, которую я могу использовать, чтобы ссылаться на ранее написанную группу. Я работаю в C #.