Вопрос по поиску строки с использованием регулярных выражений и сохранению в списке - PullRequest
1 голос
/ 12 августа 2010

Ниже приведен код, используемый для поиска строки, в которой существует Identity = "", и сохранения этой строки в списке.Мне нужно добавить к этому поиску, чтобы он не только забрал Identity = "", но ТАКЖЕ где FrameworkSiteID = "".Как я могу изменить приведенный ниже код, чтобы сделать это?

Большое спасибо.

List<KeyValuePair<string, string>> IdentityLines = new List<KeyValuePair<string, string>>();

foreach(FileInfo file in Files) 
            { 
                string line = "";
                using(StreamReader sr = new StreamReader(file.FullName)) 
                { 
                        while(!String.IsNullOrEmpty(line = sr.ReadLine())) 
                        {
                            if (line.ToUpper().Contains("IDENTITY="))
                            {
                                string login = reg.Match(line).Groups[0].Value;
                                IdentityLines.Add(new KeyValuePair<string, string>(file.Name, login));
                            }
                            else
                            {
                                IdentityLines.Add(new KeyValuePair<string, string>(file.Name,"NO LOGIN"));
                            }
                        }
                    //More additional code, not included..

1 Ответ

1 голос
/ 12 августа 2010

Исправлено:

static void TestRegularExpression()
{
    String line = "Some text here, blah blah Identity=\"EDN\\nuckol\" and FRAMEworkSiteID=\"DesotoGeneral\" and other stuff.";
    Match m1 = Regex.Match(line, "((identity)(=)('|\")([a-zA-Z]*)([\\\\]*)([a-zA-Z]*)('|\"))", RegexOptions.IgnoreCase);
    Match m2 = Regex.Match(line, "((frameworkSiteID)(=)('|\")([a-zA-Z]*)('|\"))", RegexOptions.IgnoreCase);

    if (m1.Success && m2.Success)
    {
        //...
        Console.WriteLine("Success!");
        Console.ReadLine();
    }
}

Вот тестер регулярных выражений, который мне нравится использовать. http://gskinner.com/RegExr/

Матф

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...