У меня есть регулярное выражение (?!\,)(?!X){3}[0-9\.\w\s\+\-\:\,]+
и строки типа
"1", "S1", "S2", "1", "2"
"1", "S1", "S2", "1", 2
"1", "S1", "S2", "1", "2", 3
Я пытаюсь разобрать эту строку с помощью регулярных выражений (по совпадениям), и я не силен в регулярных выражениях.
Мне нужно обработать элементы "1", "S1", "S2"
и пропустить элементы "1", "2"
. Первая идея состоит в том, чтобы указать в логике регулярных выражений, таких как «не принимать вхождения, которые сначала справа (« 2 »-2), а затем справа (« 1 »-1), но принимают все другие вхождения».
Основная идея состоит в том, что эта логика должна быть сделана только с регулярным выражением, а не с помощью кода C # (я говорю о сопоставлении позиции объекта в массиве соответствий C # - без логики C #, следует использовать только регулярное выражение).
Как я могу изменить свое регулярное выражение (?!\,)(?!X){3}[0-9\.\w\s\+\-\:\,]+
, чтобы указать позиции, которые не должны обрабатываться?