答案:^([1-9]|(\\)|-|,){1,}$在ie中的测试代码:<input type="text" id="myStr" />
<script language="javascript">
var reg = /^([1-9]|(\\)|-|,){1,}$/;
document.onkeypress = function(){
if(event.keyCode==13){
var s = document.getElementById('myStr').value;
alert(reg.test(s))
};
};
</script>

解决方案 »

  1.   

    在输入框输入字符串, 按enter就可知道匹配否.
      

  2.   

    与sunxing007有点不大一样
    /^[1-9\\,-]+$/
    <input type="text" id="test" onchange="check()"/>
    <script language="javascript">
    var reg = /^[1-9\\,-]+$/;
    function check(){
    var s = document.getElementById("test").value;
    alert(reg.test(s))
    }
    </script>
    当文本改变时会弹出来
      

  3.   

    上面那个忘了加转义字符了,看下面这个示例,应该符合你的要求:
    import java.util.regex.*;public class RegularTest
    {
    public static void main(String[] args)
    {
    String str1 = "00\\121,---,,22-\\";
    boolean p = Pattern.matches("[0-9\\\\,-]+",str1);
    System.out.println(p);//输出true
    }
    }
      

  4.   

     String regex = "^[\\d\\,-]+$";
     String str = "2,";
     Pattern p = Pattern.compile(regex, 2);
     Matcher m = p.matcher(str);
     while (m.find()) {
     System.out.println(m.group());
     }