Я пытаюсь выполнить некоторые проверки строки, где я использую регулярное выражение, используя lookbehind и lookahead, чтобы получить определенную часть фрагмента текста. Типичный формат текста следующий:
BS-123456.v2019
Часть текста, которую я извлекаю, - 123456 с использованием следующего регулярного выражения:
(?<=\-)(.*?)(?=\.v)
По сути, я всегда хочу получить часть текста между дефисом '-' и частью '.v'.
Это хорошо работает.
Однако мне нужно откорректировать, чтобы отфильтровать все, что начинается со слова «Копировать», игнорируя регистр. Например, если у меня есть следующий текст:
Copy_BS-123456.v2019
или Copy-BS-123456.v2019
или копия BS-123456.v2019
и т. Д. Регулярное выражение не должно ничего возвращать.
Я пробовал что-то вроде
^(?!Copy)(?<=\-)(.*?)(?=\.v)
, но, похоже, это не сработало. Я относительно новичок в регулярных выражениях, поэтому, пожалуйста, извините, если я упустил что-то очевидное. Буду признателен за любые предложения или точку в правильном направлении.