Регулярное выражение с круглыми скобками в datatable - PullRequest
0 голосов
/ 02 мая 2020

Я не очень хорошо разбираюсь в регулярных выражениях. Но я фильтрую данные bootstrap на основе столбца, подобного этому:

Это отфильтрует любую строку в столбце 4, в которой есть "HOUSE"

myTable.columns(4).search('^(?:(?!HOUSE).)*$\r?\n?', true, false).draw();

Теперь я хотел написать еще один поиск, который удаляет все из того же столбца, в котором есть "HOUSE (MAIN)". Я пытался:

myTable.columns(4).search('^(?:(?!HOUSE(MAIN)).)*$\r?\n?', true, false).draw();

но это не работает.

1 Ответ

2 голосов
/ 02 мая 2020

( и ) - special characters в регулярном выражении, используемом для захвата или группировки объектов.

Из-за этого использование регулярного выражения 'HOUSE(MAIN)' фактически соответствует строке 'HOUSEMAIN', но не 'HOUSE(MAIN)'. Я не уверен, что это действительно то, что вам нужно (комментарии могут помочь), но регулярное выражение должно быть в скобках, поэтому:

HOUSE\(MAIN\)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...