sorry,第一次写正则表达式,别见笑,我要表达的意思是[0-9]+代表数字连续出现一次或多次,|表示或者,\*,\?是转义,/?+表是?连续出现,估计写的不对^-^
上面的有手误,我是这么写的re=/([0-9]+)|\*|\?+/i;
大家帮忙看看,到底应该怎么写!

解决方案 »

  1.   

    meizz(梅花雪(新婚蜜月中)) 兄
    那*不能连续出现,而?可以连续出现怎么表现出来
      

  2.   

    meizz我用你写的还是不行啊,具体如下:
    var re=/[\d\?\*]/g;
    if(re.test(str_content))
    {
         alert("here!");
    }
    else
    {
         alert("输入格式错误!");
         return false;
    }
    我即便输入英文字符也是到alert("here!");不知道为什么?
    是不是别的地方有错,帮忙看看,谢谢!
      

  3.   

    就是要求一个输入框(input type=text)只能输入数字,*和?别的字符都不能输入,*号不能连续,?问号可以连续,顺序没有要求。你所说的格式是什么意思?
      

  4.   

    试试:
      <input type=text  onblur="teststr(this.value)">
    <script>
      function teststr(str){
         var re=/^([0-9]|\*|\?)+$/;
         if (re.test(str)&&(!(/(\*\*)+/.test(str)))) alert("输入字符合格!");
         else alert ("输入字符有误!");
      }
    </script>
      

  5.   

    <input type="text" name="abc" onchange="alert(this.value.search(/^[\d\*\?]+$/g)==0)">