如何查找包含以@“anystring”

时间:2016-01-12 06:16:23

标签: c# asp.net c#-4.0

我在c:/ dom / xml中有xml文件。 我只想搜索包含文本或字符串start的所有xml文件 与@“anystring”&#x9

实施例: 下面的标记显示在xml文件中我需要过滤包含文本的xml文件名。

<parameter ID="**@Id_name&#x9**;&#x9;" >

我在下面试过

  static void Main(string[] args)
    {
        string sourceFolder = @"C:\dom\Xml";
        string searchWord = "&#x9";

        List<string> allFiles = new List<string>();
        AddFileNamesToList(sourceFolder, allFiles);
        foreach (string fileName in allFiles)
        {
            string contents = File.ReadAllText(fileName);
            if (contents.Contains(searchWord))
            {
                Console.WriteLine(fileName);
            }
        }

        Console.WriteLine(" ");
        System.Console.ReadKey();
    }

    public static void AddFileNamesToList(string sourceDir, List<string> allFiles)
    {

        string[] fileEntries = Directory.GetFiles(sourceDir);
        foreach (string fileName in fileEntries)
        {
            allFiles.Add(fileName);
        }

        //Recursion    
        string[] subdirectoryEntries = Directory.GetDirectories(sourceDir);
        foreach (string item in subdirectoryEntries)
        {
            // Avoid "reparse points"
            if ((File.GetAttributes(item) & FileAttributes.ReparsePoint) != FileAttributes.ReparsePoint)
            {
                AddFileNamesToList(item, allFiles);
            }
        }

    }

但我需要像'@“Anystring”&amp;#x9'

这样的serchword

2 个答案:

答案 0 :(得分:1)

我希望以下代码能为您提供帮助。

convert

答案 1 :(得分:0)

您可以如下定义Regex并在代码中使用它。

.csproj

代码可以修改为

<Import Project="$(SolutionDir)\Assemblies\Fody\build\dotnet\Fody.targets" Condition="Exists('$(SolutionDir)\Assemblies\Fody\build\dotnet\Fody.targets')" />
    <Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
    <PropertyGroup>
        <ErrorText>This project references NuGet package(s) that are missing on this computer. Enable NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
    </PropertyGroup>
    <Error Condition="!Exists('$(SolutionDir)\Assemblies\Fody\build\dotnet\Fody.targets')" Text="$([System.String]::Format('$(ErrorText)', '$(SolutionDir)\Assemblies\Fody\build\dotnet\Fody.targets'))" />
</Target>

工作小提琴手demo