public TextChunk(string text, bool allowFuzzingMatching) { this.Text = text; this.CharacterSpans = StringBreaker.BreakIntoCharacterParts(text); this.SimilarityChecker = allowFuzzingMatching ? new WordSimilarityChecker(text, substringsAreSimilar: false) : null; }
public static void AddParts(string text, bool word, ref TemporaryArray <TextSpan> parts) { for (var start = 0; start < text.Length;) { var span = StringBreaker.GenerateSpan(text, start, word); if (span.IsEmpty) { // All done break; } Debug.Assert(span.Start >= start, "Bad generator."); parts.Add(span); start = span.End; } }
public static ArrayBuilder <TextSpan> GetParts(string text, bool word) { var parts = ArrayBuilder <TextSpan> .GetInstance(); for (int start = 0; start < text.Length;) { var span = StringBreaker.GenerateSpan(text, start, word); if (span.IsEmpty) { // All done break; } Debug.Assert(span.Start >= start, "Bad generator."); parts.Add(span); start = span.End; } return(parts); }
public TextChunk(string text) { this.Text = text; this.CharacterSpans = StringBreaker.BreakIntoCharacterParts(text); }