文档地址:https://github.com/shekhargulati/strman-java/wiki
一、Maven 项目需要在 pom.xml 文件中添加以下依赖
<dependency>
<groupId>com.shekhargulati</groupId>
<artifactId>strman</artifactId>
<version>0.4.0</version>
</dependency>
二、介绍
import static strman.Strman.append
append("f", "o", "o", "b", "a", "r")
// result => "foobar
import static strman.Strman.appendArray
appendArray("f", new String[]{"o", "o", "b", "a", "r"}
// result => "foobar"
import static strman.Strman.at
at("foobar", 0)
// result => Optional("f")
import static strman.Strman.between
between("[abc][def]", "[", "]")
// result => ["abc","def"]
import static strman.Strman.chars
chars("title")
// result => ["t", "i", "t", "l", "e"]
import static strman.Strman.charsCount
charsCount("abca")
// result => Map(("a",2),("b",1),("c",1))
import static strman.Strman.collapseWhitespace
collapseWhitespace("foo bar")
// result => "foo bar"
import static strman.Strman.contains
contains("foo bar","foo")
// result => true
contains("foo bar","FOO", false) // turning off case sensitivity
// result => true
import static strman.Strman.containsAll
containsAll("foo bar", new String[]{"foo", "bar"})
// result => true
containsAll("foo bar", new String[]{"FOO", "bar"},false)
// result => true
import static strman.Strman.containsAny
containsAny("bar foo", new String[]{"FOO", "BAR", "Test"}, true)
// result => true
import static strman.Strman.countSubstr
countSubstr("aaaAAAaaa", "aaa")
// result => 2
countSubstr("aaaAAAaaa", "aaa", false, false)
// result => 3
import static strman.Strman.endsWith
endsWith("foo bar", "bar")
// result => true
endsWith("foo Bar", "BAR", false)
// result => true
import static strman.Strman.ensureLeft
ensureLeft("foobar", "foo")
// result => "foobar"
ensureLeft("bar", "foo")
// result => "foobar"
ensureLeft("foobar", "FOO", false)
// result => "foobar"
import static strman.Strman.base64Decode
base64Decode("c3RybWFu")
// result => "strman"
import static strman.Strman.base64Encode
base64Encode("strman")
// result => "c3RybWFu"
import static strman.Strman.binDecode
binDecode("0000000001000001")
// result => "A"
import static strman.Strman.binEncode
binEncode("A")
// result => "0000000001000001"
import static strman.Strman.decDecode
decDecode("00065")
// result => "A"
import static strman.Strman.decEncode
decEncode("A")
// result => "00065"
import static strman.Strman.ensureRight
ensureRight("foo", "bar")
// result => "foobar"
ensureRight("foobar", "bar")
// result => "foobar"
ensureRight("fooBAR", "bar", false)
// result => "foobar"
import static strman.Strman.first
first("foobar", 3)
// result => "foo"
import static strman.Strman.head
head("foobar")
// result => "f"
import static strman.Strman.hexDecode
hexDecode("0041")
// result => "A"
import static strman.Strman.hexEncode
hexEncode("A")
// result => "0041"
import static strman.Strman.inequal
inequal("a", "b")
// result => true
import static strman.Strman.insert
insert("fbar", "oo", 1)
// result => "foobar"
import static strman.Strman.last
last("foobarfoo", 3)
// result => "foo
import static strman.Strman.leftPad
leftPad("1", "0", 5)
// result => "00001"
import static strman.Strman.lastIndexOf
lastIndexOf("foobarfoobar", "F", false)
// result => 6
import static strman.Strman.leftTrim
leftTrim(" strman")
// result => "strman"
prepend("r", "f", "o", "o", "b", "a")
// "foobar"
removeEmptyStrings(new String[]{"aa", "", " ", "bb", "cc", null})
// result => ["aa", "bb", "cc"]
removeLeft("foofoo", "foo")
// "foo"
removeNonWords("foo&bar-")
// result => "foobar"
removeRight("foobar", "bar")
// result => "foo"
removeRight("foobar", "BAR",false)
// result => "foo
removeSpaces("foo bar")
// result => "foobar"
repeat("1", 3)
// result => "111"
reverse("foo")
// result => "oof"
rightPad("1", "0", 5)
// result => "10000"
rightTrim("strman ")
// result => "strman"
safeTruncate("foo bar", 4, ".")
// result => "foo."
safeTruncate("A Javascript string manipulation library.", 16, "...")
// result => "A Javascript..."
truncate("A Javascript string manipulation library.", 14, "...")
// result => "A Javascrip..."
htmlDecode("Ш")
// result => Ш
htmlEncode("Ш")
// result => "Ш"
shuffle("shekhar")
slugify("foo bar")
// result => "foo-bar"
transliterate("fóõ bár")
// result => "foo bar"
trimEnd(" abc ")
// result => Optional(" abc")
trimEnd("")
// result Optional.empty()
surround("div", "<", ">"
// result => "<div>s"
tail("foobar")
// result => "oobar"
toCamelCase("CamelCase")
// result => "camelCase"
toCamelCase("camel-case")
// result => "camelCase"
toStudlyCase("hello world")
// result => "HelloWorld"
toDecamelize("helloWorld",null)
// result => "hello world"
toKebabCase("hello World")
// result => "hello-world"
toSnakeCase("hello world")
// result => "hello_world"
upperFirst("fred")
// result => "Fred"
words("This is a string, with words!")
// result => ["This", "is", "a", "string", "with", "words"]
isEnclosedBetween("{{shekhar}}", "{{", "}}")
// result => true
join(new String[]{"hello","world","123"}, ";")
// result => "hello;world;123")
isBlank("")
// result => true)
isBlank(null)
// result => true)
isBlank("test")
// result => false)
underscored("MozTransform")
// result => "moz_transform")
zip("abc", "def")
// result => ["ad", "be", "cf"]
zip("abc", "d")
// result => ["ad"]
lines("Hello\r\nWorld")
// result => ["Hello", "World"]
dasherize("the_dasherize_string_method")
// result => "the-dasherize-string-method"
humanize("the_humanize_method")
// result => "The humanize method"
swapCase("AaBbCcDdEe")
// result => "aAbBcCdDeE"
chop("whitespace", 3);
// result => ["whi", "tes", "pac", "e"]