public List <RegionArea> GetRegionAreas() { RegionAreas = new List <RegionArea>(); if (!string.IsNullOrEmpty(Text)) { bool searchingRegionStart = true; StringLineReader reader = new StringLineReader(Text); string line; RegionArea regionArea = null; int index = 0; while ((line = reader.ReadLine()) != null) { line = line.Trim(); if (searchingRegionStart) { if (line.StartsWith("#region", StringComparison.InvariantCulture)) { searchingRegionStart = false; regionArea = new RegionArea(this, index); if (line.Length > 8) { regionArea.RegionName = line.Substring(8); } } } else { if (line.StartsWith("#endregion", StringComparison.InvariantCulture)) { searchingRegionStart = true; regionArea.RegionEndIndex = reader.Position - 1; RegionAreas.Add(regionArea); } } index = reader.Position; } } return(RegionAreas); }
public List<RegionArea> GetRegionAreas() { RegionAreas = new List<RegionArea>(); if (!string.IsNullOrEmpty(Text)) { bool searchingRegionStart = true; StringLineReader reader = new StringLineReader(Text); string line; RegionArea regionArea = null; int index = 0; while ((line = reader.ReadLine()) != null) { line = line.Trim(); if (searchingRegionStart) { if (line.StartsWith("#region", StringComparison.InvariantCulture)) { searchingRegionStart = false; regionArea = new RegionArea(this, index); if (line.Length > 8) regionArea.RegionName = line.Substring(8); } } else { if (line.StartsWith("#endregion", StringComparison.InvariantCulture)) { searchingRegionStart = true; regionArea.RegionEndIndex = reader.Position - 1; RegionAreas.Add(regionArea); } } index = reader.Position; } } return RegionAreas; }
public async Task Should_return_all_lines_then_null() { // Given var input = "this\nthat\nthe other"; var reader = new StringLineReader(input); var output = new List <string>(); // When string current = null; do { current = await reader.GetNextLine(); output.Add(current); } while (current != null); // Then output[0].ShouldEqual("this"); output[1].ShouldEqual("that"); output[2].ShouldEqual("the other"); output[3].ShouldEqual(null); }
private void btnOrderLines_Click(object sender, EventArgs e) { string clipboard = Clipboard.GetText(); clipboard = clipboard.Trim(); string[] lines = new StringLineReader(clipboard).ReadAllLines(); Array.Sort(lines); string result = string.Join("\r\n", lines); tbDefaultText.Text = clipboard; tbNewText.Text = result; }