求javascript js正则表达式匹配以@@开头@@结尾,不包含@@的字符串


var result =/^@@([.*])@@$/g;  //^开头$结尾  
var str = "@@dsfdsafds...@@";//要匹配的字符串
var val = result.exec(str);  // 返回一个数组.
var vals = /@@/g.test(val[0]); //对得出中间的字符串进行匹配并返回一个布尔值
if(vals){
    //字符串内含有液困歼@@
}else{
    //字闹冲符串内无@@
}

如果是要得到@@123@@中间的123的话则是:
var result =/^@@([.*])@@$/g;  //^开头$结尾  
var str = "@@dsfdsafds...@@";//要尺敬匹配的字符串
var val = result.exec(str);  // 返回一个数组.
var vals = val[0];            //得出中间的字符串




不知道对不对窝  (*^__^*) 我也是菜鸟


//感觉不符合你要求,最做州好给个匹配效果实祥裤例
var str 纯宴蔽= "@@adsfafsd@@"; 
var result;
result = /^@@(.+)@@$/g.exec(str);
document.write(result[1]);

var reg = /^@@[^@]*@@$/;

正则表达式没有“不匹配”的功能的。比如[^abc]表示匹配不包含a,b,c3个字母以外的的字符,但没法匹配 不包含"abc"的字符串。
要实现这个功能靠一唯弯个正则表达式是不行的,只有通过一定的逻辑控制实现.
function regtest(input){
var reg1=/^@@.*@@.*@@$/;
var reg2=/^@@.*@@$/;
if(reg2.test(input)){ //匹配@@.......@@字符串
if(reg1.test(input)){
return false;
}else{ //再匹配敏银@@...@@...@@这种字符串,成功则不符合要,其余的就符指拿闷合要求了
return true;
}
}else{
return false;
}
}
这个简单。正则表达式:

/@@(.*)@@/;

使用辩稿肆方式:
var re = @@(.*)@@/;
var result = re.exec(str);

如果匹配,result是非空的数组,第一个元素就是不包携轿含@@的字敬消符串。