Извлечь текст после строки, используя GREL
Я пытаюсь добавить столбец на основе столбца в OpenRefine с использованием GREL.
Вот пример исходных данных ячейки:
https://www.example.com/notice/search/woa/(type)/SOMEWORD
Я хочу извлечь:
SOMEWORD
Поэтому мне нужно извлечь все после строки (type)/
Что такое функция GREL для этого?
2 ответа
Решение
Если "SOMEWORD" всегда является последней частью строки, вы также можете использовать:
value.split("/")[-1]
или же
value.rpartition("/")[2]
Если у вас есть URL-адреса, которые не содержат "тип", и вы не хотите, чтобы результат был одинаковым, вы можете отфильтровать строки только по тем, которые содержат тип (типы), прежде чем выполнять GREL.
Вы можете использовать match()
функция и регулярное выражение:
value.match(/.+\/(.+)/)[0]
Или чтобы быть более точным:
value.match(/.+\(type\)\/(.+)/)[0]
Результат: