我正在使用jQuery DataTable来显示记录,我想在某些情况下使用RegExp进行搜索 我有字符串:
var str="ATP ,Defib 30 J (830 V),Defib 30 J (830 V),Aborted Defib 30 J (830 V),Aborted CVRT 15 J (588 V)";
如果我只使用CVRT搜索,那么它不应该匹配,但是如果我使用Aborted CVRT进行搜索,它应该匹配。 即如果我在逗号之后输入文本,则应匹配文本,例如使用Aborted CVRT或Defib 30进行搜索,也应匹配ATP(字符串中的第一个)。
先谢谢
答案 0 :(得分:1)
如果我理解正确,您应该使用两个RegEx,一个用于Defib 30
,另一个用于ATP
。
像这两样:
,\w+ \w+
匹配:,Defib 30
等。
^\w+
匹配:ATP
。
如果你不需要,
,你可以复制积极的看法:
var matches = [], str = "ATP ,Defib 30 J (830 V),Defib 30 J (830 V),Aborted Defib 30 J (830 V),Aborted CVRT 15 J (588 V)";
str.replace(/(,)(\w+ \w+)?/g, function(match, $0, $1){
if($0) matches.push($1)
});
console.log(matches); // ["Defib 30", "Defib 30", "Aborted Defib", "Aborted CVRT"]
答案 1 :(得分:0)
在javascript中使用字符串 .match() .matse()方法搜索 用于匹配正则表达式的字符串,并返回 匹配,作为Array对象。
var str = "ATP ,Defib 30 J (830 V),Defib 30 J (830 V),Aborted Defib 30 J (830 V),Aborted CVRT 15 J (588 V)";
var res = str.match(/CVRT/g);
console.log(res);