From f2ae0cb70448c5eccee80fd1d1cc600644692768 Mon Sep 17 00:00:00 2001 From: bculkin2442 Date: Sat, 11 Feb 2017 08:43:13 -0500 Subject: Fixed extra toString comma --- .../main/java/bjc/utils/funcutils/TokenDeaffixer.java | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) (limited to 'BJC-Utils2/src/main/java/bjc/utils/funcutils') diff --git a/BJC-Utils2/src/main/java/bjc/utils/funcutils/TokenDeaffixer.java b/BJC-Utils2/src/main/java/bjc/utils/funcutils/TokenDeaffixer.java index 79f6e3b..2aa92e5 100644 --- a/BJC-Utils2/src/main/java/bjc/utils/funcutils/TokenDeaffixer.java +++ b/BJC-Utils2/src/main/java/bjc/utils/funcutils/TokenDeaffixer.java @@ -1,5 +1,6 @@ package bjc.utils.funcutils; +import java.util.Iterator; import java.util.function.BiFunction; import bjc.utils.funcdata.FunctionalList; @@ -24,9 +25,27 @@ final class TokenDeaffixer if (StringUtils.containsOnly(token, operatorRegex)) { return new FunctionalList<>(token); } else if (token.startsWith(operatorName)) { + if(token.endsWith(operatorName)) { + return new FunctionalList<>(operatorName, token.split(operatorRegex)[1], operatorName); + } + return new FunctionalList<>(operatorName, token.split(operatorRegex)[1]); } else if (token.endsWith(operatorName)) { return new FunctionalList<>(token.split(operatorRegex)[0], operatorName); + } else if (token.contains(operatorName)) { + String[] tokenParts = token.split(operatorRegex); + + IList returned = new FunctionalList<>(); + + for(int i = 0; i < tokenParts.length; i++) { + returned.add(tokenParts[i]); + + if(i < tokenParts.length - 1) { + returned.add(operatorName); + } + } + + return returned; } else { return new FunctionalList<>(token); } -- cgit v1.2.3