using System.Collections.Generic;
public static void Main()
string A = "12345678abcdefghijklmn";
string B = "22345678abcdefghijjlmn";
var diffs = A.Zip(B).Select((pair, idx) => (pair, idx))
.Where(val => char.ToLower(val.pair.First) != char.ToLower(val.pair.Second));
var ranges = new List<(string item, int begin, int end)>
{ ("項目A", 0, 8), ("項目B", 0, 2), ("項目C", 8, 8+13+1) };
var included = diffs.Where(val => r.begin <= val.idx && val.idx < r.end);
if (!included.Any()) return;
Console.WriteLine($"{r.item}, 比較文字列A:{A[r.begin..r.end]}, 比較文字列B:{B[r.begin..r.end]}");
foreach (var i in included)
Console.WriteLine($"不一致箇所:{i.idx-r.begin+1}, 不一致文字A:{i.pair.First}, 不一致文字B:{i.pair.Second}");