VLOOKUP текст с двумя критериями

Хотя ответы, которые вы не можете проанализировать HTML с регулярными выражениями, верны, они не применяются здесь. OP просто хочет проанализировать один тег HTML с регулярными выражениями, и это то, что можно сделать с помощью регулярного выражения.

Предлагаемое регулярное выражение неверно:

<([a-z]+) *[^/]*?>

Если вы добавите что-то в регулярное выражение, путем обратного отслеживания его можно заставить сопоставить такие глупые вещи, как <a >>, [^/] слишком разрешительно. Также обратите внимание, что <space>*[^/]* является избыточным, поскольку [^/]* также может соответствовать пробелам.

Мое предложение было бы

<([a-z]+)[^>]*(?<!/)>

Где (?<! ... ) (в Perl-регулярных выражениях) отрицательный внешний вид. Он читает «a», затем слово, а затем все, что не является>, последнее из которых не может быть /, а затем> «.

Обратите внимание, что это позволяет такие вещи, как <a/ > ( как и исходное регулярное выражение), поэтому, если вы хотите что-то более ограничительное, вам нужно создать регулярное выражение для соответствия парам атрибутов, разделенных пробелами.

0
задан Kara W 17 January 2019 в 16:49
поделиться

3 ответа

Это невозможно с VLOOKUP. Посмотрите мое решение на картинке, используя формулу массива.

Решение с использованием формул массива

Формула в F2: = INDEX ($ C $ 1: $ C $ 6; SUM (IF (E2 = $ A $ 2: $ A $ 6) ; 1) * IF ($ B $ 2: $ B $ 6 = «маленький»; 1) * ROW ($ C $ 2: $ C $ 6)); 1)

Ps: не не забудьте подтвердить формулу с помощью Ctrl + Shift + Enter .

0
ответ дан Michel Excel 17 January 2019 в 16:49
поделиться

Конечно, возможен многоколонный поиск, но без использования VLOOKUP. Вам нужно будет использовать INDEX и MATCH. Это становится довольно сложным, так как объединяет формулы массива с логической логикой. Вот хорошее объяснение.

https://exceljet.net/formula/index-and-match-with-multiple-criteria

Для вашего примера, предположим, что требуемая компания результата находится в столбце I.

=INDEX($F$4:$F$5,MATCH(1,(D4:D5=I4)*(E4:E5="small"),0))
0
ответ дан Mike 17 January 2019 в 16:49
поделиться

Есть несколько решений, которые я обычно использую для этих задач. Они не элегантны, то есть не являются поиском по двум критериям, но они выполняют свою работу.

Исходя из структуры данных, у вас есть следующие варианты:

  1. Сортировка таблицы поиска по размеру компании, с размером в порядке убывания. После этого это простое представление, поскольку ваши крупные компании сегрегированы из маленьких.

  2. Создайте новый ключ, состоящий из размера компании, т.е. CONCAT (компания, размер), и выполните vlookup на основе этого ключа.

0
ответ дан kerwei 17 January 2019 в 16:49
поделиться
Другие вопросы по тегам:

Похожие вопросы: