You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jena.apache.org by an...@apache.org on 2026/05/28 18:04:41 UTC
(jena) 01/05: Add StrUtils.containsIgnoreCase
This is an automated email from the ASF dual-hosted git repository.
afs pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/jena.git
commit 46ae1e887368398339bb36a66c3b86781e484ab4
Author: Andy Seaborne <an...@apache.org>
AuthorDate: Tue May 26 15:48:39 2026 +0100
Add StrUtils.containsIgnoreCase
---
.../src/main/java/org/apache/jena/atlas/lib/StrUtils.java | 13 +++++++++++++
.../test/java/org/apache/jena/atlas/lib/TestStrUtils.java | 10 ++++++++++
2 files changed, 23 insertions(+)
diff --git a/jena-base/src/main/java/org/apache/jena/atlas/lib/StrUtils.java b/jena-base/src/main/java/org/apache/jena/atlas/lib/StrUtils.java
index 71d2a1458d..f7706bf152 100644
--- a/jena-base/src/main/java/org/apache/jena/atlas/lib/StrUtils.java
+++ b/jena-base/src/main/java/org/apache/jena/atlas/lib/StrUtils.java
@@ -119,6 +119,19 @@ public class StrUtils //extends StringUtils
return str1.contains(str2) ;
}
+ /**
+ * Does one string, str1, contain another string, str2, ignoring the case of letters?
+ *
+ * @param str1
+ * @param str2
+ * @return true if str1 contains str2, ignoring the case of letters
+ */
+ public static boolean containsIgnoreCase(String str1, String str2) {
+ str1 = Lib.uppercase(str1);
+ str2 = Lib.uppercase(str2);
+ return str1.contains(str2);
+ }
+
public final static String replace(String string, String target, String replacement) {
return string.replace(target, replacement) ;
}
diff --git a/jena-base/src/test/java/org/apache/jena/atlas/lib/TestStrUtils.java b/jena-base/src/test/java/org/apache/jena/atlas/lib/TestStrUtils.java
index 97d3d21c52..89c237884a 100644
--- a/jena-base/src/test/java/org/apache/jena/atlas/lib/TestStrUtils.java
+++ b/jena-base/src/test/java/org/apache/jena/atlas/lib/TestStrUtils.java
@@ -88,6 +88,16 @@ public class TestStrUtils
assertEquals(expectedLastChar, lastChar);
}
+ @Test public void contains_ignorecase_1() {
+ boolean b = StrUtils.containsIgnoreCase("foobar", "FOO");
+ assertTrue(b);
+ }
+
+ @Test public void contains_ignorecase_2() {
+ boolean b = StrUtils.containsIgnoreCase("foobar", "OO");
+ assertTrue(b);
+ }
+
@Test public void prefix_ignorecase_1() {
boolean b = StrUtils.strStartsWithIgnoreCase("foobar", "FOO");
assertTrue(b);