Regex 代码覆盖率设置中的正则表达式

Regex 代码覆盖率设置中的正则表达式,regex,code-coverage,vs-unit-testing-framework,Regex,Code Coverage,Vs Unit Testing Framework,我需要从代码覆盖范围中筛选出一些模块。我正在使用以下正则表达式: <ModulePath>.*\.i.*\.dll$</ModulePath> *\.i.*.dll$ 要排除以下程序集:assembly.iwhatever.dll 但它不起作用。有人能帮我处理正则表达式吗?您不需要将$锚定放在dll之后,您可以尝试以下操作: <ModulePath>(.*\.i.*\.dll)</ModulePath> (.*.i.*.dll) 请注意,

我需要从代码覆盖范围中筛选出一些模块。我正在使用以下正则表达式:

<ModulePath>.*\.i.*\.dll$</ModulePath>
*\.i.*.dll$
要排除以下程序集:
assembly.iwhatever.dll


但它不起作用。有人能帮我处理正则表达式吗?

您不需要将
$
锚定放在
dll
之后,您可以尝试以下操作:

<ModulePath>(.*\.i.*\.dll)</ModulePath>
(.*.i.*.dll)


请注意,使用锚定取决于您的文本

您需要在
标记中使用此选项:

<Exclude>
  <!-- But exclude some assemblies: -->
  <ModulePath>[^.]*\.i.*\.dll$</ModulePath>
</Exclude>

[^.]*\.i.*\.dll$

请参阅上的详细信息,以及只排除在第一个

之后具有
i
的dll的正则表达式。我需要“$”来指示“.dll”应位于字符串末尾。您的表达式对我没有帮助。。。由于某些原因,该文件未被排除。我想问题不在于表达式本身,而在于其他方面……你确定吗?尝试使用
^[^.]*\.i.*\.dll$
^
锚定。我只是不知道你们有什么DLL,也许我们需要更精确。顺便说一句,您是否
将ExcludeFromCodeCoverage属性添加到测试类中。
是否在
标记内?另外,请查看Visual Studio 2010中的
,.testsettings文件仅适用于基于MSTest框架的单元测试。从VisualStudio2012开始,测试工具不仅适用于MSTest,还适用于其他框架,如NUnit和xUnit.net。.testsettings文件将无法使用这些设置。.runsettings文件旨在以一种适用于所有测试框架的方式自定义测试工具。