我使用Datatable的搜索插件只显示那些具有值作为变量'成员'的行。在列索引0中。
document.getElementById(orderid).textContent = "Collapse";
table.columns(0).search("^"+member+"/Collapse*/",true).draw();
我想要的只是那些拥有'成员'第0列中的变量或'成员'变量后跟Collapse在列中的任何位置。
EG。对于Column0
10
100
1000
10 Collapse
20
我希望搜索只返回10和10折叠,当我用' 10'搜索正则表达式时作为会员。如何为此搜索编写正则表达式?
答案 0 :(得分:0)
尝试在serach字符串处添加g
进行全局搜索(返回所有结果,而不仅仅是一个)
"^"+member+"/Collapse*/g"
答案 1 :(得分:0)
以JNF的答案为基础:尝试添加全局搜索g
和多行m
修饰符。
此外,您还需要在成员标识符和单词“Collapse”之间匹配空格。
这样的事情可以解决问题:
"/^"+member+"(\s+Collapse)?$/gm"
DEMO:https://regex101.com/r/eM0cV5/1
第三,您应该禁用智能搜索。摘自Datatables - search()
请注意,要执行智能搜索,DataTables使用正则表达式,因此如果使用此方法的第二个参数启用正则表达式,您可能希望禁用智能搜索,因为这两个正则表达式可能会发生冲突并导致意外结果。