Преобразование countpattern
Преобразование countpattern подсчитывает число вхождений текстового шаблона, заданного регулярным выражением. Оно просматривает каждый объект данных и отдельно подсчитывает частоту каждого уникального совпавшего текста в указанном поле field.
Параметры pattern и stopwords содержат регулярные выражения внутри строк. Поэтому специальные символы нужно правильно экранировать: для поиска цифр используйте "\\d", а не "\d".
Параметры преобразования
| Свойство | Тип | Описание |
|---|---|---|
| field | Field | Обязательно. Поле с текстовыми данными. |
| pattern | String | Строка с корректным регулярным выражением для поиска в тексте. Частота каждого уникального совпавшего текста подсчитывается отдельно. Значение по умолчанию [\\w\']+ соответствует последовательностям символов слова и апострофов, без других символов. |
| case | String | Преобразование текста в нижний или верхний регистр перед поиском: lower, upper или mixed (по умолчанию, регистр сохраняется). |
| stopwords | String | Строка с регулярным выражением для игнорируемых слов. Например, "(foo|bar|baz)" исключает "foo", "bar" и "baz". По умолчанию пустая строка "", то есть исключений нет. |
| as | String[ ] | Имена выходных полей для найденного текста и числа совпадений (по умолчанию ["text", "count"]). |
Использование
Пример считает в поле comment все последовательности цифр, кроме числа 13.
{
"type": "countpattern",
"field": "comment",
"pattern": "\\d+",
"stopwords": "13"
}
Для следующих входных данных:
[
{"comment": "between 12 and 12.43"},
{"comment": "43 minutes past 12 o'clock (and 13 seconds)"}
]
получается результат:
[
{"text": "12", "count": 3},
{"text": "43", "count": 2},
]