【发布时间】:2009-12-07 22:21:26
【问题描述】:
有谁知道如何编写一个正则表达式(用于类似 grep 的工具),它将搜索单词“vat”但排除单词“private”。我接手了一个项目,该项目有数百个增值税参考(有些是硬编码的,有些不是),由于英国的增值税率在 1 月 1 日发生变化,我需要用正确的税率更新项目源文件。目前,当我在 Visual Studio 中对单词“vat”进行全局搜索时,它还会返回包含私有 void 定义的行。
除此之外,我还需要搜索“15”(当前增值税率),但我想排除任何在“15”之前或之后有任何数字的行。例如,0.15 或 15 或 15% 为真,015 或 150 或 15a 为假。
您可以想象,手动完成这项任务并非易事,因此我们将不胜感激。
谢谢,
提姆
【问题讨论】:
-
增值税率 (15) 是否有可能发生变化?如果是这样,您是否打算设置一个变量?
-
不需要复杂的正则表达式。伪代码:如果字符串中的增值税而不是字符串中的 private,则执行某些操作。
标签: c# regex grep regex-negation