正则真的是不懂呀,网上找了一个"[^\\\/\:\*\?\"\<\>\|\,]+(\,[^\\\/\:\*\?\"\<\>\|\,]+)*",我把这个放到javascript语句中就是说找不到对象。var isfilename=[^\\\/\:\*\?\"\<\>\|\,]+(\,[^\\\/\:\*\?\"\<\>\|\,]+)*;
    if (isfilename.test(obj.value))
    {
     document.getElementById("errordiv").innerHTML="<font color=red>专辑名称不合法</font>";return false;

    }
网上找的大部分都是从URL或取文件名,找不到我要的。
我希望文件夹的命名和windows的一样,就是不能包含'?/"\*|<>'不包括单引号

解决方案 »

  1.   

    '号是充许的<script type="text/javascript">
        var reg= new RegExp(/[A-Za-z]:[^\?\/\*\|<>]+$/);
        var ary = new Array("d:\\aa","aaa","d:\a/b","d:\>","d:\a*");
        for(var i =  0 ;i <ary.length;i++)
        {
            if(reg.test(ary[i]))
            {
                alert(ary[i]+" 合法");
            }else
            
                alert(ary[i]+" 不合法");
            
        }
    </script>
      

  2.   


    楼主要想判断的是新创建文件夹的时候输入的文件夹名称是否合法吧var reg= /[^\\\/\*\?\|\<\>\:]+/;// 排除所有'\\','/', '*', '?', '|', '<', '>', ':'