我正在将this regular expression C#字符串重构为常量,我不确定如何最好地命名它(我的正则表达式很弱)。
@"^(?!\s\s)"
问号不是表示可选的东西吗?什么问题是可选的?
我发现,作为一名开发人员,您必须先清楚地了解某些内容,然后才能正确命名(另请:Naming is Hard),所以我想清楚地理解这一点,然后给它一个正确的名称。
这个正则表达式的名称是什么?
我正在考虑LinesThatDoNotStartWithTwoSpaces
或DoesNotStartWithTwoSpaces
。
答案 0 :(得分:5)
构造本身是一个负面的先行。它指定了一个在主表达式后无法匹配的组。
在这种情况下,是的,当匹配的行不以两个空格(空格)开头时匹配。
我将正则表达式命名为NotMatchLineStartingWithTwoWhiteSpaces
答案 1 :(得分:1)
我总是尝试在变量名中使用Not
。例如NotHuman
,其含义将随Human
的定义而变化。
此外,变量名称应该告诉我们这是什么,但不是什么 - 这是可以做的,所以我认为在变量名中使用动词不是一个好主意,例如Search
,Match
。
对于您的情况,LineWithoutIndentation
如何,类似于CSS3中的text-indent
属性。
答案 2 :(得分:0)