Regex 正则表达式帮助

Regex 正则表达式帮助,regex,visual-studio,Regex,Visual Studio,对于以下情况,我很难找到正则表达式。请帮忙!我基本上需要正则表达式来使用Visual Studio查找代码中的.NET命名约定错误 所有私有变量都应以下划线开头。因此,我需要寻找任何类似以下内容的表达式: Private#这里只有一个单词#作为(字符串|整数|布尔值) 所有ASP.Net标签的ID前缀应为“lbl” 编辑 根据下面的评论,我推测您正在使用VS正则表达式搜索框。这完全有自己的正则表达式风格,不同于.NET引擎。请尝试以下操作: 1.:Private~(:a.]+As(String

对于以下情况,我很难找到正则表达式。请帮忙!我基本上需要正则表达式来使用Visual Studio查找代码中的.NET命名约定错误

  • 所有私有变量都应以下划线开头。因此,我需要寻找任何类似以下内容的表达式:

    Private
    #这里只有一个单词#
    作为(字符串|整数|布尔值)

  • 所有ASP.Net标签的ID前缀应为“lbl”

    编辑

    根据下面的评论,我推测您正在使用VS正则表达式搜索框。这完全有自己的正则表达式风格,不同于.NET引擎。请尝试以下操作:

    1.:
    Private~(:a.]+As(String | Integer | Boolean)

    2.:
    ,确保当前位置无法匹配
    lbl

    ^
    表示字符类之外的“行/字符串的开头”。它仅表示字符类内部的“否定”,如
    [^abc]
    (=“除
    a
    b
    c
    )之外的任何字符)

    Tim的第一版的#1对我来说确实有效:

    Private \w+ As (Integer|String|Boolean)
    
    对于第二种方法:

    <asp:Label.*id="(?!lbl).*?">
    
    
    
    标记未关闭应该是它与示例不匹配的原因


    顺便说一句,请确保在表达式上使用正确的修饰符。至少使用“i”。

    缩写regex已经包含单词expression;)您忘记强制使用下划线:)@samy:我不明白您的意思。下划线是变量名的有效部分。@Tim:“所有私有变量都应该以下划线开头。”“1)不起作用。我的代码中有以下行:私有索引为整数,而您的表达式没有找到它。我以前已经试过/w+。别的?2) 它也不起作用。我有一个ID=“test”的标签,但它也没有找到。@KennyTM:啊,我明白了。谢谢@齐亚德:现在再试试1号。请编辑你的问题,提供一些你正在尝试正则表达式的实际行。奇怪。。。他们都不是为我工作。你是如何测试的?我正在使用Visual Studio的全局搜索框,并选中了“使用正则表达式”复选框。@Ziad:现在我看到了您的问题:Visual Studio使用自己的正则表达式语法,而与.NET正则表达式语法无关。hmmm。。。你知道如何在VisualStudio中完成吗?