public void comparisonTmpMarkersFindSrcAndBin(List <MarkerSrc> lMarkersFromSrc, List <MarkerBin> lBinWithMarkers) { if (lMarkersFromSrc.Count == 0) { MessageBox.Show("Вы не выбрали файлы с исходными текстами!"); return; } lResultNotFoundMarker = lMarkersFromSrc.ToList(); List <string> lMarkersInBinNoFoundInSrc; List <MarkerSrc> lResultFoundMarker = new List <MarkerSrc>(); lResultAllMarkers = new List <MarkerSrc>(); lResultMarkersInBin = new List <ResultMarkersInBin>(); foreach (var oneBin in lBinWithMarkers) { lResultFoundMarker = new List <MarkerSrc>(); string pathBin = oneBin.Path; lMarkersInBinNoFoundInSrc = oneBin.ListNumberMarker.ToList(); foreach (var numberMarker in oneBin.ListNumberMarker) { if (lMarkersFromSrc.Any(x => x.Number.Equals(numberMarker))) { MarkerSrc resultFoundMarker = new MarkerSrc(); foreach (var marker in lMarkersFromSrc) { if (marker.Number.Equals(numberMarker)) { resultFoundMarker.Number = numberMarker; resultFoundMarker.Path = marker.Path; lResultNotFoundMarker.Remove(marker); lMarkersInBinNoFoundInSrc.Remove(numberMarker); break; } } lResultFoundMarker.Add(resultFoundMarker); if (lResultAllMarkers.Count == 0) { lResultAllMarkers.Add(resultFoundMarker); } else if (!lResultAllMarkers.Any(x => x.Number.Equals(numberMarker))) { lResultAllMarkers.Add(resultFoundMarker); } } } //if (lResultNotFoundMarker.Count != 0) //{ // lResultAllNotFoundMarkers.AddRange(lResultNotFoundMarker); //} lResultMarkersInBin.Add(new ResultMarkersInBin(pathBin, lResultFoundMarker)); } }
public void findTmpMarkerWithSrc() { List <string[]> lParentFilters = new List <string[]>(); //dPathFileAndNumberTmpMarker = new Dictionary<string, string>(); lMarkersInSrc = new List <MarkerSrc>(); lParentFilters.Add(Directory.GetFiles(fbd.SelectedPath, "*.cs", SearchOption.AllDirectories)); try { foreach (var filter in lParentFilters) { foreach (var path in filter) { string[] allLinesInFile = File.ReadAllLines(path); foreach (var line in allLinesInFile) { string paternFindTmpMarker = "tmp[0-9]{8}"; Regex regex = new Regex(paternFindTmpMarker); Match match = regex.Match(line); if (match.Success) { MarkerSrc markerSrc = new MarkerSrc(); markerSrc.Number = match.Value; markerSrc.Path = path; //dPathFileAndNumberTmpMarker.Add(match.Value, path); lMarkersInSrc.Add(markerSrc); break; } } } } } catch (Exception e) { MessageBox.Show("Can't open file.\nOriginal error: " + e.Message); } }