1 package eu
.etaxonomy
.cdm
.common
;
3 import java
.util
.ArrayList
;
4 import java
.util
.Arrays
;
7 public class CdmUtilsBelen
{
11 public static String
deleteEmptySpaces(String inputName
) {
12 String outputName
= inputName
.replaceAll("\\s+", " ").trim();
16 // Replace characters with ASCII characters
18 public static String
replaceSpecialCharacters(String str
) {
20 output
= str
.replaceAll("[áåâãàä]", "a");
21 output
= output
.replaceAll("[éêèë]", "e");
22 output
= output
.replaceAll("[ôõøòóö]", "o");
23 output
= output
.replaceAll("[ìíîï]", "i");
24 output
= output
.replaceAll("[üûúù]", "u");
25 output
= output
.replaceAll("ñ", "n");
26 output
= output
.replaceAll("ç", "c");
30 // Change lists to lowercase
32 public static List
<String
> listToLowerCase(List
<String
> List
) {
33 List
<String
> lowerCaseList
= new ArrayList
<>();
34 for (String x
: List
) {
35 lowerCaseList
.add(x
.toLowerCase());
37 return lowerCaseList
;
40 // Replace characters combinations that sound similar
42 public static String
soundalike(String inputName
) {
43 String
[][] soundalike
= {
50 for (int i
= 0 ; i
<soundalike
.length
;i
++) {
51 if (inputName
.contains(soundalike
[i
][0])) {
52 inputName
= inputName
.replace(soundalike
[i
][0],soundalike
[i
][1]);
58 // Remove duplicated letters
60 public static String
removeDuplicate(String input
) {
61 char [] temp
= input
.toCharArray();
62 int lenght
=temp
.length
;
66 for (int i
= 0; i
< lenght
- 1; i
++) {
68 if (!(temp
[i
] == temp
[p
])) {
69 temp
[index
++] = temp
[i
];
72 String output
= String
.valueOf(Arrays
.copyOf(temp
, index
));
73 output
= output
+ temp
[lenght
- 1];
77 // normalize ending ignoring gender issues
79 public static String
replacerGenderEnding(String input
) {
81 String firstPart
= input
.substring(0, input
.length() - 2);
82 String lastTwoChar
= input
.substring((input
.length() - 2), input
.length());
83 String
[] endingChar
= new String
[] { "is", "us", "ys", "es", "im", "as", "um", "os" };
84 for (String i
: endingChar
) {
85 if (lastTwoChar
.contains(i
)) {
86 lastTwoChar
= lastTwoChar
.replace(i
, "a");
89 String output
= firstPart
+ lastTwoChar
;