Я прочитал строку из файла, который я разделил на | персонаж. Например, строка
1|test pattern|prefix|url|postfix
Таким образом, разделение всегда должно давать мне 5 подстрок, которые в приведенном выше случае
["1", "test pattern", "prefix", "url", "postfix"]
Проблема возникает, когда любая из этих пяти подстрок содержит | персонаж. Я бы сохранил его как экранированный \|
1|test pattern|prefix|url \| title |postfix
Теперь вы можете видеть, что string.split('|') не даст мне желаемого результата. Желаемый результат
["1", "test pattern", "prefix", "url \| title ", "postfix"]
Я пробовал некоторые регулярные выражения, но ни одно из них не дало желаемого результата.
string.split(/[^\\]\|/) //["", "", "prefi", "$url \| $titl", " postfix"]
Похоже, это возможно только с отрицательными ретроспективными обзорами, но мне не удалось заставить их работать.