当比较两个独立的byte[]源(数组/指针)中的单个字节值时,如何执行大小写不敏感的比较?
我有一个非常大的字节数组,其中包含我通过指针访问的字符串“haystack”,并将其与“needle”模式进行比较,但当前仅在存在完全匹配时返回。
是否可以创建包含大小写转换值的查找字典,并在比较循环中使用它,或者还有更快的方法吗?(从性能方面考虑)
编辑1:
字符串采用UTF8编码。
期望的行为是:在比较a、a;A、A;或a、A时返回true。但由于'A'在UTF8中的值为65,而'a'的值为97,因此我无法进行大小写不敏感的比较。
x == byte[x] || byte[x+32]
进行比较,其中x为大写字母,如果我理解正确的话。 - Falco Alexander