【发布时间】:2020-05-02 00:33:37
【问题描述】:
我不精通正则表达式。但我正在根据这样的列过滤我的引导数据表:
这将过滤掉第 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();
但它不起作用。
【问题讨论】:
-
(和)在正则表达式中有特殊含义,需要转义才能匹配字面:'^(?:(?!HOUSE\(MAIN\)).)*$\r?\n?' -
这能回答你的问题吗? Regular Expression for matching parentheses
-
如果你只是做一个简单的文本搜索,你不需要正则表达式;只需使用indexOf 进行文本搜索并检查它是否大于-1。字符串替换也是如此:如果您正在执行精确的文本搜索,则不需要正则表达式。如果您需要将搜索限制在字符串的开头,您的正则表达式可以更更简单:
^HOUSE.
标签: javascript regex datatables