public void BoyerMooreSearch() { string input = "That the string for scan that would be converted to binary format."; string fragment = "the string for scan"; int index = BoyerMoore.IndexOf(input, fragment); Assert.IsTrue(index == 5, index.ToString()); }
private static void Find(byte[] data) { var utf8 = Encoding.UTF8; var pattern = utf8.GetBytes("タプル"); Span <byte> str = data; while (true) { var i = BoyerMoore.IndexOf(str, pattern); if (str.Length == i) { break; } Console.WriteLine($"{i}: {utf8.GetString(str.Slice(i, pattern.Length).ToArray())}"); str = str.Slice(i + 1); } }