[ 
https://issues.apache.org/jira/browse/LANG-1014?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14172960#comment-14172960
 ] 

Thiago Andrade commented on LANG-1014:
--------------------------------------

Usage:


// public static String unwrap(String str, char unwrapChar)
StringUtils.unwrap("", '\0') = ""
StringUtils.unwrap("xabx", 'x') = "ab"
StringUtils.unwrap("\"ab\"", '\"') = "ab"
StringUtils.unwrap("\"\"ab\"\"", '\"') = "\"ab\""
StringUtils.unwrap("'ab'", '\'') = "ab"
StringUtils.unwrap("''ab''", '\'') = "'ab'"
StringUtils.unwrap("'''ab'''", '\'') = "''ab''"
StringUtils.unwrap("'\"abcd\"'", '\'') = "\"abcd\""
StringUtils.unwrap("'\"abcd\"'", '\"') = "'\"abcd\"'"

// public static String unwrapFull(String str, char unwrapChar)
StringUtils.unwrapFull("", '\0') = ""
StringUtils.unwrapFull("xabx", 'x') = "ab"
StringUtils.unwrapFull("xxxxxxabxxxxxx", 'x') = "ab"
StringUtils.unwrapFull("\"ab\"", '\"') = "ab"
StringUtils.unwrapFull("\"\"ab\"\"", '\"') = "ab"
StringUtils.unwrapFull("'ab'", '\'') = "ab"
StringUtils.unwrapFull("'x'ab'x'", '\'') = "x'ab'x"
StringUtils.unwrapFull("''ab''", '\'') = "ab"
StringUtils.unwrapFull("'''''ab'''''", '\'') = "ab"
StringUtils.unwrapFull("''''x'ab'''''", '\'') = "x'ab'"
StringUtils.unwrapFull("'ab''''", '\'') = "ab'''"

// public static String unwrap(String str, String unwrapStr)
StringUtils.unwrap("xxabxx", "xx") = "ab"
StringUtils.unwrap("xxxxabxxxx", "xx") = "xxabxx"
StringUtils.unwrap("xx xxabxx xx", "xx") = " xxabxx "
StringUtils.unwrap("xxZxx", "xx") = "Z"
StringUtils.unwrap("xxZxx", "x") = "xZx"
StringUtils.unwrap("xzx xzx", "xzx") = " "
StringUtils.unwrap("xxxx xxxx", "xx") = "xx xx"
StringUtils.unwrap("'name'", "'") = "name"
StringUtils.unwrap("''name''", "'") = "'name'"
StringUtils.unwrap("'''name'''", "'") = "''name''"

// public static String unwrapFull(String str, String unwrapStr)
StringUtils.unwrapFull("xxabxx", "x") = "ab"
StringUtils.unwrapFull("xx xxabxx xx", "xx") = " ab "
StringUtils.unwrapFull("xxZxx", "xx") = "Z"
StringUtils.unwrapFull("xzx xzx", "xzx") = " "
StringUtils.unwrapFull("xxxx xxxx", "xx") = " "
StringUtils.unwrapFull("'name'", "'") = "name"
StringUtils.unwrapFull("''name''", "'") = "name"
StringUtils.unwrapFull("'''name'''", "'") = "name"

// public static String unwrap(String str, String unwrapLeft, String 
unwrapRight)
StringUtils.unwrap("xxabxx", "x", "x") = "ab"
StringUtils.unwrap("xx xxabxx xx", "xx", "xx") = " ab "
StringUtils.unwrap("xxZxx", "xx", "xx") = "Z"
StringUtils.unwrap("xxZxx", "xx", "yy") = "xxZxx" // no unwrap
StringUtils.unwrap("xzx xzx", "xzx", "xzx") = " "
StringUtils.unwrap("xxxx xxxx", "xx", "xx") = " "
StringUtils.unwrap("xxxx xxxx", "xx", "yy") = "xxxx xxxx" // no unwrap
StringUtils.unwrap("xxxxxxxxxxoutputxxxxxxxxxx", "xxxxx", "xxxxx") = "output"
StringUtils.unwrap("%{name}", "%{", "}") = "name"
StringUtils.unwrap("%{ name}", "%{", "}") = " name"
StringUtils.unwrap("%{ name }", "%{", "}") = " name "
StringUtils.unwrap(" %{ name }", "%{", "}") = "  name "
StringUtils.unwrap("%{'name'}", "%{'", "'}") = "name"
StringUtils.unwrap("%{' name'}", "%{'", "'}") = " name"
StringUtils.unwrap("%{' name '}", "%{'", "'}") = " name "
StringUtils.unwrap(" %{' name '}", "%{'", "'}") = "  name "
StringUtils.unwrap("%{ 'name'}", "%{'", "'}") = "%{ 'name'}" // no unwrap
StringUtils.unwrap("% {'name'}", "%{'", "'}") = "% {'name'}" // no unwrap
StringUtils.unwrap("% { 'name'}", "%{'", "'}") = "% { 'name'}" // no unwrap

// public static String unwrapFull(String str, String unwrapLeft, String 
unwrapRight)
StringUtils.unwrapFull("xxabxx", "x", "x") = "ab"
StringUtils.unwrapFull("xx xxabxx xx", "xx", "xx") = " ab "
StringUtils.unwrapFull("xxZxx", "xx", "xx") = "Z"
StringUtils.unwrapFull("xxZxx", "xx", "yy") = "xxZxx" // no unwrap
StringUtils.unwrapFull("xzx xzx", "xzx", "xzx") = " "
StringUtils.unwrapFull("xxxx xxxx", "xx", "xx") = " "
StringUtils.unwrapFull("xxxx xxxx", "xx", "yy") = "xxxx xxxx" // no unwrap
StringUtils.unwrapFull("xxxxxxxxxxoutputxxxxxxxxxx", "xxxxx", "xxxxx") = 
"output"
StringUtils.unwrapFull("%{name}", "%{", "}") = "name"
StringUtils.unwrapFull("%{ name}", "%{", "}") = " name"
StringUtils.unwrapFull("%{ name }", "%{", "}") = " name "
StringUtils.unwrapFull(" %{ name }", "%{", "}") = "  name "
StringUtils.unwrapFull("%{'name'}", "%{'", "'}") = "name"
StringUtils.unwrapFull("%{' name'}", "%{'", "'}") = " name"
StringUtils.unwrapFull("%{' name '}", "%{'", "'}") = " name "
StringUtils.unwrapFull(" %{' name '}", "%{'", "'}") = "  name "
StringUtils.unwrapFull("%{ 'name'}", "%{'", "'}") = "%{ 'name'}" // no unwrap
StringUtils.unwrapFull("% {'name'}", "%{'", "'}") = "% {'name'}" // no unwrap
StringUtils.unwrapFull("% { 'name'}", "%{'", "'}") = "% { 'name'}" // no unwrap


> Adding unwrap and unwrapFull methods to StringUtils
> ---------------------------------------------------
>
>                 Key: LANG-1014
>                 URL: https://issues.apache.org/jira/browse/LANG-1014
>             Project: Commons Lang
>          Issue Type: New Feature
>          Components: lang.*
>            Reporter: Thiago Andrade
>            Assignee: Benedikt Ritter
>              Labels: github
>             Fix For: Review Patch
>
>
> Placeholder ticket for github PR 25: 
> https://github.com/apache/commons-lang/pull/25
> Adding the following methods from StringUtils:
> {code:java}
>     public static String unwrap(String str, char unwrapChar)
>     public static String unwrapFull(String str, char unwrapChar)
>     public static String unwrap(String str, String unwrapStr)
>     public static String unwrapFull(String str, String unwrapStr)
>     public static String unwrap(String str, String unwrapLeft, String 
> unwrapRight)
>     public static String unwrapFull(String str, String unwrapLeft, String 
> unwrapRight)
> {code}
> These methods unwraps (fully or not) the string parameter. See pull request 
> for usage examples.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to