首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > JavaScript >

正则表达式?该如何解决

2012-03-15 
正则表达式?如何判断Textbox中必须包含三个下划线___? [解决办法] script type text/javascript var

正则表达式?
如何判断Textbox中必须包含三个下划线___?


[解决办法]
<script type= "text/javascript ">
var a= "a___ ___ ___b "
var b= "a___ ___b "
if(/___ ___ ___/.test(a)){
alert( "ok ")
}else{
alert( "err ")
}
if(/___ ___ ___/.test(b)){
alert( "ok ")
}else{
alert( "err ")
}
var aa= "a___ "
var bb= "a__b "
var cc= "a__b_ "
if(/___/.test(aa)){
alert( "ok ")
}else{
alert( "err ")
}
if(/___/.test(bb)){
alert( "ok ")
}else{
alert( "err ")
}
if(/___/.test(cc)){
alert( "ok ")
}else{
alert( "err ")
}
</script>
[解决办法]
function _0009(str)
{
return /^[^_]*(?:_{3}[^_]*){3}$/.test(str);
}

alert(_0009( "___ ___ ___ "));
alert(_0009( "___ ___ ___ ___ "));
alert(_0009( "___ __ ___ "));
alert(_0009( "___ ___ "));
alert(_0009( "_______ "));
[解决办法]
不知道楼主的意思是不是单个不要超过三个,也不要少于三个,如果是那样的话,可以使用
<script language=javascript>
function _0009(str)
{
return (str.replace(/___/g, " ").indexOf( "_ ")==-1)
}

alert(_0009( "___ ___ ___ "));
alert(_0009( "___ ___ ___ ___ "));
alert(_0009( "___ __ ___ "));
alert(_0009( "___ ___ "));
alert(_0009( "_______ "));
</script>
[解决办法]
(____+?)|(_+?___)|(((? <=[^_])|^)_{1,2}(?=[^_]+?))
用这个试试,如果返回结果了。就是出现了小于3或大于3的_就会有结果
[解决办法]
function _0009(str)
{
return /(____+?)|(_+?___)|(((? <=[^_])|^)_{1,2}((?=[^_]+?)|$))/.test(str);
}

alert(_0009( "___ ___ ___ "));
alert(_0009( "___ ___ ___ ___ "));
alert(_0009( "___ __ ___ "));
alert(_0009( "___ ___ "));
alert(_0009( "_______ "));


格式我不知道对不对,我不懂jsp。
[解决办法]
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
※以下是引用17楼 wuyazhe(经常答错,欢迎指正。) 在2007-07-21 10:01:22 的发言:
──────────────────────────────────────────
function _0009(str)
{
return /(____+?)|(_+?___)|(((? <=[^_])|^)_{1,2}((?=[^_]+?)|$))/.test(str);
}
alert(_0009( "___ ___ ___ "));
alert(_0009( "___ ___ ___ ___ "));
alert(_0009( "___ __ ___ "));
alert(_0009( "___ ___ "));
alert(_0009( "_______ "));
格式我不知道对不对,我不懂jsp。
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
这是JAVASCRIPT

你写的正则逻辑好乱. ____+?和_+?___在逻辑上讲得通吗?另外JS不支持负向声明,? <=是不能用的.

其实这个正则并不难,只是楼主没有表达清楚.我也不知道他真正想要的是什么!

热点排行