regex - 在 Resharper 中使用 Regex 编写自定义模式

标签 regex pattern-matching resharper

我目前正在尝试编写规则,以使用 Resharper 9 为我们的团队强制执行某些代码格式。 我尝试编写的某些规则无法正常工作或根本无法工作。 例子 : 在一行中强制执行简单的 getter 和 setter 属性: enter image description here

这将转换为: enter image description here

为此:

public string Description { get; set;
    }

如您所见,结尾的花括号转到了我没有要求的新行。

有人遇到过这个问题吗?

另一个随机问题是用方法名和前导括号之间的空格重写方法:

enter image description here

但我无法让这个工作。 任何帮助都会很棒

最佳答案

结构搜索和替换并不是为了强制格式化而设计的——几乎恰恰相反!它旨在匹配代码而不考虑格式,并匹配相似的代码结构(例如 x > 11 < x 是等效的匹配语句)。

要强制执行这种格式,需要类似 StyleCop 的东西。目前有 9.1 的插件,但 9.2 没有。适用于 9.1 的插件在 ReSharper 的扩展管理器(ReSharper → 扩展管理器)中可用,但是,它仅在启用预发布扩展(ReSharper → 选项 → 扩展管理器 → 启用预发布)时可见。希望 9.2 兼容版本将很快可用。

关于regex - 在 Resharper 中使用 Regex 编写自定义模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32002400/

相关文章:

c# - 代码契约确保 ReSharper ExternalAnnotations

c# - ReSharper:覆盖默认命名空间以防止 "Namespace does not correspond to file location"

java - 检查字符串是否包含某些字符 Java 正则表达式

C# Regex去除单引号之间的单引号

delphi - 在 Delphi 中使用通配符搜索字符串中的模式?

python - 数字列表 - 如何找到重复模式?

python - 在 Python 中匹配 2 个正则表达式

javascript - 使用正则表达式删除前导空格、回车符和不需要的标签

algorithm - F# 中模式匹配在幕后是如何工作的?

c# - 如何让 VS 假定所有内容默认都是公开的