昨天还好好的今天发现 Regex.Replace 方法出错
就这个方法
Regex.Replace("abcdefg","\\s+", " ");
无论传什么参数
都会报一个错:有关调用实时(JIT)调试而不是此对话框的详细信息,
请参见此消息的结尾。************** 异常文本 **************
System.ArgumentNullException: 值不能为空。
参数名: input
   在 System.Text.RegularExpressions.Regex.Replace(String input, String replacement)
   在 System.Text.RegularExpressions.Regex.Replace(String input, String pattern, String replacement)

解决方案 »

  1.   

    string output=Regex.Replace("abcdefg","\\s+", " ");应该没问题
      

  2.   

    重装framework试下呢?
      

  3.   

    昨天到今天,你干过什么了?
    更新过什么.net framework框架?
      

  4.   


    我用的是 Frameworkd 3.5 sp1 客户说没有做过什么操作,我把 .net 3.5 sp 删除又重新安装还是一样。就一台电脑有问题,其它都没有问题。太奇怪了。
      

  5.   

    调试模式报错的话可能是调试器坏了……你编译到发行版看看是否报错?直接跑exe看看
      

  6.   

    估计你的编译环境出了问题,最简单的是将VS完全卸载,包括.NET Framework,重新安装
      

  7.   


    不是这个问题,是客户电脑中已经发布的系统运行一段时间后突然报错的。然后我就写了一个最简单和程序,就一行代码 
    Regex.Replace("abcdefg","\\s+", " ");
    也是报相同的错。因此确定是 Framework 出问题了。
    在网上查,都不知道怎么描述这个问题。
      

  8.   


    没有,我在客户的电脑上查了,有 .net 4.6 的更新,都是上个月的事儿了。
    昨天客户使用都没有问题,过了一夜,就不行了。
    我的系统中好多地方用正则表达式,不可能都用其它代码替换。