public static boolean startsWithIgnoreCase(String text, String prefix) {
        if (text != null && prefix != null) {
            return prefix.length() <= text.length() && text.regionMatches(true, 0, prefix, 0, prefix.length());
        } else {
            return text == null && prefix == null;
        }
    }
@Test
    public void testStartsWithIgnoreCase() {
        assertTrue(StringHelper.startsWithIgnoreCase(null, null));
        assertFalse(StringHelper.startsWithIgnoreCase("foo", null));
        assertFalse(StringHelper.startsWithIgnoreCase(null, "bar"));
        assertFalse(StringHelper.startsWithIgnoreCase("HelloWorld", "bar"));
        assertTrue(StringHelper.startsWithIgnoreCase("HelloWorld", "Hello"));
        assertTrue(StringHelper.startsWithIgnoreCase("HelloWorld", "hello"));
        assertFalse(StringHelper.startsWithIgnoreCase("HelloWorld", "Helo"));
        assertTrue(StringHelper.startsWithIgnoreCase("HelloWorld", "HelloWorld"));
        assertTrue(StringHelper.startsWithIgnoreCase("HelloWorld", "helloWORLD"));
        assertTrue(StringHelper.startsWithIgnoreCase("HelloWorld", "HELLO"));
        assertTrue(StringHelper.startsWithIgnoreCase("helloworld", "helloWORLD"));
        assertTrue(StringHelper.startsWithIgnoreCase("HELLOWORLD", "HELLO"));
    }