如何用一个正则表达式判断字符串是否为如下格式\\172.16.1.216或者\\SVR2011能提供示范代码最好多谢各位!

解决方案 »

  1.   

    if(Regex.IsMatch(yourStr,@"\\\\(\d{1,3}(\.\d{1,3}){3}|\w+)"))
    {
    //包含你那个格式,
    }if(Regex.IsMatch(yourStr,@"^\\\\(\d{1,3}(\.\d{1,3}){3}|\w+)"))
    {
    //以你那个格式开头的
    }
      

  2.   


    后面的//SVR2111这种格式怎么验证了?
      

  3.   

    如果反过来,
    不判断开头的
    ([\\/])\1(\d{1,3}(\.\d{1,3}){3}|\w+)
    判断开头的
    ^([\\/])\1(\d{1,3}(\.\d{1,3}){3}|\w+)
      

  4.   


    不好意思写错了,是\\SVR2011,那我要判断格式是\\172.16.2.216或者\\SVR2011怎么写了?因为只要字符串是如上任一种格式,我就执行我的逻辑...
      

  5.   

     if (Regex.IsMatch("\\\\SVR2011\\EGEGE", @"^([\\/])\1(\d{1,3}(\.\d{1,3}){3}|\w+)"))这种格式也匹配,我只要\\172.16.2.216或者\\SVR2011这种格式,后面不能再有字串了.
      

  6.   


    难道这个if的结果是false么?你想说什么?
      

  7.   

    格式为\\172.16.2.216或者\\svr2011如\\172,16,2,216\ 这个不是我需要的格式
      \\172.16.2.216\vox 这个也不是我需要的格式.
    说的简单点就是从字串的第3位开始就不可以出现'\'字符