MySQL RLIKE повторяющаяся конечная позиция символа

Я сделал мою должную осмотрительность и все еще застрял. У меня есть ситуация, когда мне нужно найти, где последний существующий символ находится в строке поиска, а затем проверить, что следует за этим символом. Я думаю, что мне нужно использовать RLIKE, чтобы сделать это, но, возможно, есть другой способ. Пример строки содержимого table.column:

MSH|Stuff|morestuf|||
PID|stuff|morestuff|morestuffofanotherlength||wejustfollowedablank|morestuff2||^1^|||..|||||..|.||.

Я что считать 19 труб | после ключевого слова PID, посмотрите, не является ли следующий символ НЕ | (может быть больше 19 труб, или может быть меньше, и я не хочу взрываться, если нет 19, чтобы искать)

Я знаю, что могу использовать функцию LOCATE, чтобы найти свою начальную позицию после PID, не знаю, как передать эту позицию в выражение, чтобы начать считать 19 вхождений | за стартовую позицию.

Частичное регулярное выражение в ie pspad будет выглядеть примерно так: '\(.+\)PID[|]{19}' Я не могу получить это, чтобы не ошибаться в MySQL, поэтому либо синтаксис другой, либо я совершенно не на том пути.

Какие-либо предложения?

0 ответов

Другие вопросы по тегам