summaryrefslogtreecommitdiff
path: root/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/utils/StringUtils.java
diff options
context:
space:
mode:
Diffstat (limited to 'platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/utils/StringUtils.java')
-rw-r--r--platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/utils/StringUtils.java27
1 files changed, 27 insertions, 0 deletions
diff --git a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/utils/StringUtils.java b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/utils/StringUtils.java
new file mode 100644
index 0000000000..8a0be63de9
--- /dev/null
+++ b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/utils/StringUtils.java
@@ -0,0 +1,27 @@
+package com.mapbox.mapboxsdk.utils;
+
+import android.support.annotation.Keep;
+import android.support.annotation.NonNull;
+
+import java.text.Normalizer;
+
+/**
+ * String utility class used by core from jni.
+ */
+@Keep
+class StringUtils {
+
+ /**
+ * Normalises String input and strip diacritics from it.
+ *
+ * @return normalised String with stripped diacritics.
+ */
+ @Keep
+ @NonNull
+ static String unaccent(@NonNull String value) {
+ return Normalizer.normalize(value, Normalizer.Form.NFD)
+ .replaceAll("(\\p{InCombiningDiacriticalMarks}"
+ + "|\\p{InCombiningDiacriticalMarksForSymbols}"
+ + "|\\p{InCombiningDiacriticalMarksSupplement})+", "");
+ }
+}