Я прочитал много вопросов и информации о REGEX, но пока не нашел ничего убедительного.
Я использую REGEXP_SUBSTR
в амазонском красном смещении, которое согласно документации использует аромат POSIX в стиле regex. Насколько я понимаю, это довольно просто, и не может смотреть в будущее.
Есть ли способ сопоставить шаблону, кроме символов, которые идут в начале или в конце?
Я пытаюсь проанализировать поле user_agent
в нашей базе данных, и это действительно поможет.
Пример
Пример строки 1: 'Mozilla/5.0 (iPhone; CPU iPhone...'
Матч рассчитывал: iPhone
Пример строки 2: 'Mozilla/5.0 (Windows NT 10.0; Win64; ...'
Матч рассчитывал: Windows NT 10.0
.
Я пытаюсь сопоставить то, что находится между первой скобкой и следующей точкой с запятой (iPhone
), но исключает скобку и точку с запятой из совпадения.
На данный момент я использую '\\(.*;'
, но он довольно прост и кажется, что он может легко вернуть неправильное совпадение.
Я понимаю, что мог бы сопоставить возвращаемое совпадение с substring
красного смещения, но в результате получается довольно грязный и непредсказуемый код. Мне интересно, можно ли было бы иметь совпадение с регулярным выражением, которое бы возвращало только необходимую строку.
Я знаю, что другие разновидности регулярных выражений, которые могут использовать прогнозирование, могли бы решить эту проблему, но, насколько я знаю, они недоступны в красном смещении.
Любая помощь или указатели будут очень признательны.