我希望能够从java字符串的每一边修剪一个引用。以下是一些例子。
"foo"
- > foo
"foo\""
- > foo\"
"\"foo\""
- > \"foo\"
我目前正在使用常见语言中的StringUtils.trim
但是当我使用转义引号结束字符串时,它也会修剪它,因为它们是连续的。我希望能够完全修改一个引用。
答案 0 :(得分:0)
我最终使用org.apache.commons.lang3.StringUtils.substringBetween
并且有效。
答案 1 :(得分:0)
您也可以使用substring()方法并根据条件修剪第一个和最后一个字符,尽管它有点长。
trimedString= s.substring((s.charAt(0)=='"')?1:0 , (s.charAt(s.length()-1)=='"')?s.length()-1:s.length());
答案 2 :(得分:0)
我更喜欢使用这个String方法
public String [] split(String regex)
基本上如果你输入引号,那么你将获得一个字符串数组,其中包含引号之间的所有块。
String[] parts = originalString.split("\"");
String quoteReduced = parts[0];
for (int i = 1; i < (parts.length() -1); i++){
quoteReduced = quoteReduced.concat( parts[i] +"\"" );
}
quoteReduced = quoteReduced.concat( "\"" +parts[parts.length()-1]);
虽然它可能不是最直接的,但这是我解决这个问题的方式。第一部分和最后一部分可以包含在循环中,但需要if语句。