<script>
/^D{1}[\-]?\d{0,4}[\-]?X\d{0,5}$/
</script>

解决方案 »

  1.   


    <script>/^D{1}[\-]?\d{0,4}[\-]?[X0-9]\d{0,5}$/
    </script>这个是能输入X0-9,上面是只能X
      

  2.   

    <td width="550" height="18"><input id="check" name="guider_id" type="text"  onkeyup="check2()"/> 
    *<span class="style5">导游证号必须是如下格式:D-1234-123456</span></td>
    这是调用的页面
      

  3.   


    var re=/^[D]+[\-]+[\d{0,4}]+[\-]+[X0-9]{1}\d{0,5}$/
      

  4.   

     function check2(value){
     var re=/^[D]+[\-]+[\d{0,4}]+[\-]+[X0-9]{1}\d{5}$/
     if(!re.test(value)){
     ShowMsg1.innerHTML="格式不对";
     }
     else{ShowMsg1.innerHTML="格式正确";}
     }
    调用: <input id="check" name="guider_id" type="text" onKeyPress="check2(this.value)"/>
     <div id="ShowMsg1"></div>
      

  5.   

    //下面这个正则匹配格式是:D-0000(这里可以1-4个数字)-X12345(这里可以1-6个数字或含有X)
    var re=/^[D]+[\-]+[\d{1,4}]+[\-]+[X0-9]{0,1}\d{0,5}$/
    //下面这个正则匹配格式是:D-0000(这里可以1-4个数字)-X12345(这里可以2-6个数字或第一位为X)
    var re=/^[D]+[\-]+[\d{1,4}]+[\-]+[X0-9]{1}\d{0,5}$/
    //下面这个正则匹配格式是:D-0000(这里可以1-4个数字)-X12345(这里只可以6个数字或第一位为X)
    var re=/^[D]+[\-]+[\d{1,4}]+[\-]+[X0-9]{1}\d{5}$/
      

  6.   

    //下面这个正则匹配格式是:D-0000(这里可以1-4个数字)-X12345(这里可以1-6个数字或含有X) 
    var re=/^[D]+[\-]+[\d{1,4}]+[\-]+[X0-9]{0,1}\d{0,5}$/ 
    //下面这个正则匹配格式是:D-0000(这里可以1-4个数字)-X12345(这里可以2-6个数字或第一位为X) 
    var re=/^[D]+[\-]+[\d{1,4}]+[\-]+[X0-9]{1}\d{0,5}$/ 
    //下面这个正则匹配格式是:D-0000(这里可以1-4个数字)-X12345(这里只可以6个数字或第一位为X) 
    var re=/^[D]+[\-]+[\d{1,4}]+[\-]+[X0-9]{1}\d{5}$/ 
    这是说明
    看你要的是哪一种
      

  7.   

    我的愿望是这种格式在<input id="check" name="guider_id" type="text" > 里输入:
    D-0000(必须是4个数字)-123456(必须是6个数字或第一位是X后五位是数字)中间的那些“-”的位置也不能变
    举例:D-0000-123456  或 D-0000-X23456   其他的字母都输入不进去
      

  8.   

    var re=/^[D]+[\-]+[\d{1,4}]+[\-]+[X0-9]{1}\d{5}$/ 
    这个就符合了