Отрицательный "содержит" в openrefine
Я хотел бы добавить столбец на основе другого столбца и заполнить его всеми значениями, которые НЕ содержат "jpg"
поэтому отрицание этого:
filter(value.split(","), v, v.contains("jpg")).join("|")
Как я могу написать "не содержит"?
1 ответ
contains
дает логический вывод, т.е. истина или ложь. Итак, мы имеем:
v = "picture.jpg" -> v.contains("jpg") = TRUE
v = "picture.gif" -> v.contains("jpg") = FALSE
filter
находит все значения в массиве, которые возвращают TRUE для любого условия, которое вы используете в фильтре. Есть несколько способов, которыми вы можете отфильтровать массив, чтобы найти значения, которые не содержат строку, но использование содержит самый простой, вероятно, использовать not
чтобы отменить результат вашего состояния:
filter(value.split(","), v, not(v.contains("jpg"))).join("|")