From 18b0f0ae19eb1308d2299b6e08ee6e50503672f2 Mon Sep 17 00:00:00 2001 From: Shekhar Gulati Date: Sat, 21 May 2016 22:50:59 +0530 Subject: [PATCH] Fixed #27. Added support for `rightTrim` function --- src/main/java/strman/Strman.java | 11 +++++++++++ src/test/java/strman/StrmanTest.java | 7 +++++++ 2 files changed, 18 insertions(+) diff --git a/src/main/java/strman/Strman.java b/src/main/java/strman/Strman.java index f97bd82..9fab5ae 100644 --- a/src/main/java/strman/Strman.java +++ b/src/main/java/strman/Strman.java @@ -801,6 +801,17 @@ public abstract class Strman { return append(value, repeat(pad, length - value.length())); } + /** + * Remove all spaces on right. + * + * @param value The String + * @return String without right boarders spaces. + */ + public static String rightTrim(final String value) { + validate(value, NULL_STRING_PREDICATE, NULL_STRING_MSG_SUPPLIER); + return value.replaceAll("\\s+$", ""); + } + public static String decode(final String value, final int digits, final int radix) { validate(value, NULL_STRING_PREDICATE, NULL_STRING_MSG_SUPPLIER); return Arrays diff --git a/src/test/java/strman/StrmanTest.java b/src/test/java/strman/StrmanTest.java index b148c63..c808a7f 100644 --- a/src/test/java/strman/StrmanTest.java +++ b/src/test/java/strman/StrmanTest.java @@ -612,4 +612,11 @@ public class StrmanTest { assertThat(rightPad("10000", "0", 5), equalTo("10000")); assertThat(rightPad("10000000", "0", 5), equalTo("10000000")); } + + @Test + public void rightTrim_shouldRemoveSpacesFromTheRight() throws Exception { + assertThat(rightTrim("strman "), equalTo("strman")); + assertThat(rightTrim(" strman"), equalTo(" strman")); + assertThat(rightTrim("strman"), equalTo("strman")); + } } \ No newline at end of file