繁体   English   中英

正则表达式的命名空间不起作用

[英]Namespace of Regex won't work

我翻新了一些过去在.NET Framework 3.5上工作的旧代码,使其可以在.NET Framework 4上使用C#。

以下正则表达式曾经与3.5版本一起正常工作但由于某些奇怪的原因不再起作用。

public static readonly Regex ChatColorRegex = new Regex("\\|c[A-Za-z0-9]{6,8}"),
                                 ChatLinkRegex = new Regex("\\|H.*?\\|h");

我在我的文件顶部添加了'using System.Text.RegularExpressions',但是出现了以下错误:'类型或名称空间RegularExpressions在命名空间System.Text中不存在。

我已经用Google搜索了这一点,并且读到你必须在Visual Studio中添加对System.Text.RegularExpressions的引用。 但是,当我这样做时,我无法在我可以添加的References列表中找到System.Text.RegularExpressions。

我正在使用Visual Studio 2012。

任何人都可以告诉我我做错了什么,或忘记阅读?

Regex类仍在System.Text.RegularExpression命名空间中。 该类位于系统程序集中。

如果在解决方案资源管理器中检查项目引用,则应该看到对系统程序集的引用。 检查该引用的属性,以查看用于系统程序集引用的.NET Framework版本。 它应该与您为项目属性(“应用程序”选项卡)中的“目标框架”选择的.NET Framework版本相匹配。

编辑:Regex类位于System.Text.RegularExpressions命名空间中,而不是System.Text。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM