87,910
社区成员
发帖
与我相关
我的任务
分享
var s = [
'2: 23123string2......\n'
+'123123123string11234555\n' ,
'1:\n'
+'123123123 ...string1 ....23123123\n'
+'....\n.'
+'2323 string2...1231555\n' ,
'3: string112312409\n'
+'sdfasdfsdfsdf\n' ,
'4: sdfsdfasdfsdfsstring2....',
];
var reg = /^(?=[\S\s]*string1)(?=[\S\s]*string2)/;
for (var i = 0, length = s.length; i < length; i++) {
console.log(reg.test(s[i]));
}
'use strict';
var s = (
'1:\n'
+'123123123 ...string1 ....23123123\n'
+'....\n.'
+'2323 string2...1231555\n'
+'2: 23123string2......\n'
+'123123123string11234555\n'
+'3: string112312409\n'
+'sdfasdfsdfsdf\n'
+'4: sdfsdfasdfsdfsstring2....'
);
var m, cfgName, cfgVal, kws, a = [];
var cfgPatten = /(\d+):([\S\s]+?)(?=(\d+:|$))/g;
var kwPatten = /string\d/g;
var mastInc = ['string1', 'string2'];
var contains = function(a, items){
var inArray = (
Array.prototype.indexOf
? function(a, v){
return a.indexOf(v) != -1;
}
: function(a, v){
var i, len = a.length;
for(i=0; i<len; i++){
if(a[i] == v){
return true;
}
}
return false;
}
);
var i, c, len = items.length;
for(i=0, c=0; i<len; i++){
if( inArray(a, items[i]) ){
c++;
}
}
return c == len;
}
while( m = cfgPatten.exec(s) ){
cfgName = m[1];
cfgVal = m[2];
kws = cfgVal.match(kwPatten);
if( contains(kws, mastInc) ){
a.push(cfgName);
}
}
console.log(a);
var a=/\w+:/g,b=s.match(a),c=s.split(a),d=[];
for(var i=0;i<b.length;i++){
if(c[i].indexOf('string1')!=-1 && c[i].indexOf('string2')!=-1){
d.push(b[i].replace(':',''));
}
};
alert(d);
var s='1:\n'
+'123123123 ...string1 ....23123123\n'
+'....\n.'
+'2323 string2...1231555\n'
+'2: 23123string2......\n'
+'123123123string11234555\n'
+'3: string112312409\n'
+'sdfasdfsdfsdf\n'
+'4: sdfsdfasdfsdfsstring2....'
var re = /^\d+(?=:[^:]*(?:string1[^:]*string2|string2[^:]*string1))/gim
alert(s.match(re)) //1, 2
<script>
var s='1:\n'
+'123123123 ...string1 ....23123123\n'
+'....\n.'
+'2323 string2...1231555\n'
+'2: 23123string2......\n'
+'123123123string11234555\n'
+'3: string112312409\n'
+'sdfasdfsdfsdf\n'
+'4: sdfsdfasdfsdfsstring2....'
var rx=/\d+:/g,split=s.match(rx),rst=[],arr=s.split(rx);
for(var i=1;i<arr.length;i++)
if(arr[i].indexOf('string1')!=-1&&arr[i].indexOf('string2')!=-1)rst[rst.length]=split[i-1].replace(':','');
alert(rst)
</script>
var re = /string1[\s\S]*string2|string2[\s\S]*string1/i
var re = /string1.*string2|string2.*string1/i
if (re.test(str)) ...