我目前正在制作一个带有datatables插件的表,我使用组合框制作了一个过滤器,以获得符合特定条件的结果。我遇到的问题是删除包含文本的某些行。例如:
在我的专栏中,我将在行中添加此文本:
Dividend (Full (100%) Scrip Div available)
<br>
Dividend
<br>
Code Change
<br>
Dividend (Full (100%) Scrip Div available)
<br>
Consolidation
<br>
Dividend
<br>
Dividend
&#13;
我想删除那些只有Dividend作为完整单词的人,其他人应该保留。
目前我这样做:
titleColumn.search('^(?:(?!Dividend).)*$', true, false).draw();
它现在所做的是删除包含Dividend一词的所有行,但我只想删除那些包含完整单词的行。
感谢您的时间。
答案 0 :(得分:1)
您需要的是精确的字符串匹配。您可以将其用作参考。这将检查完全匹配,然后您可以删除它或任何你的逻辑。
var reg = /^Dividend$/;
console.log(reg .test('Dividenda')); // false
console.log(reg .test('ba Dividend')); // false
console.log(reg .test('Dividend (Full (100%) Scrip Div available)')); // false
console.log(reg .test('Dividend a')); //false
console.log(reg .test('Dividend')); //true
在你的情况下:
titleColumn.search(reg, true, false).draw();
答案 1 :(得分:0)
实质上,我们希望查找由行的起点和终点约束的单词Dividend
。但是,因为您希望排除这些行,所以我们使用了一个环视:
titleColumn.search('^(?!Dividend$)', true, false).draw();