标签: apache-stringutils

从字符串中提取数字 - StringUtils Java

我有一个字符串,我想提取字符串中的(唯一)数字序列.

示例:helloThisIsA1234Sample.我想要1234

这是一个给定的数字序列只在字符串中出现一次但不在同一位置.

(对于那些会问的人,我有一个服务器名称,需要在其中提取一个特定的数字)

我想使用Apache commomns中的StringUtils类.

谢谢!

java string string-utils apache-stringutils

58
推荐指数
6
解决办法
15万
查看次数

连接字符串值和分隔符在java 8中处理null和空字符串?

在Java 8中,我有一些String值,我想以逗号分隔的有效值列表结束.如果String为null或为空,我想忽略它.我知道这似乎很常见,很像这个老问题 ; 但是,该讨论没有解决空值和空格(我也不喜欢接受的答案).

我看过Java 8 StringJoiner,commons StringUtils(join)和trusty guava(Joiner),但似乎没有一个完整的解决方案.愿景:

 where: val1="a", val2=null, val3="", val4="b"

  String niceString = StringJoiner.use(",").ignoreBlanks().ignoreNulls()
    .add(val1).add(val2).add(val3).add(val4).toString();
Run Code Online (Sandbox Code Playgroud)

会导致niceString ="a,b"

是不是有一个很好的方法来做到这一点(不涉及循环,将字符串加载到列表中,和/或正则表达式替换以删除错误的条目)?

java guava apache-stringutils java-8

25
推荐指数
1
解决办法
2万
查看次数

将List <Long>转换为逗号分隔的字符串

嗨,我有我需要转换的要求ListLong数据类型,以逗号分隔String.这将是适当的方式.我已经考虑过使用字符串构建器或将其转换为List<String>然后使用StringUtilsjoin来获取String.

我正在寻找java 7解决方案,不使用guavajava 8.

java arraylist apache-stringutils

13
推荐指数
1
解决办法
2万
查看次数

解码在android中以utf-8格式编码的字符串

我有一个字符串,它来自xml,它是德语文本.特定于德语的字符通过UTF-8格式进行编码.在显示我需要解码它的字符串之前.

我尝试过以下方法:

try {
    BufferedReader in = new BufferedReader(
            new InputStreamReader(
                    new ByteArrayInputStream(nodevalue.getBytes()), "UTF8"));
    event.attributes.put("title", in.readLine());
} catch (UnsupportedEncodingException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
} catch (IOException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
}
Run Code Online (Sandbox Code Playgroud)

我也试过这个:

try {
    event.attributes.put("title", URLDecoder.decode(nodevalue, "UTF-8"));
} catch (UnsupportedEncodingException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
}
Run Code Online (Sandbox Code Playgroud)

他们都没有工作.如何解码德语字符串

先感谢您.

UDPDATE:

@Override
public void characters(char[] ch, int start, int length)
        throws SAXException {
    // TODO Auto-generated method stub
    super.characters(ch, start, length); …
Run Code Online (Sandbox Code Playgroud)

encoding android saxparser xml-parsing apache-stringutils

12
推荐指数
1
解决办法
6万
查看次数

Apache StringUtils与Java实现的replace()

Java 1.4.2的replace实现和Apache 2.3的实现有什么区别?是否有一个性能增益?

Java 1.4.2替换

Apache 2.3替换

java replace apache-stringutils

10
推荐指数
1
解决办法
2万
查看次数

通过Person对象的getName()属性将Person对象列表转换为单独的String

XXXUtils我可以做的地方

String s = XXXUtils.join(aList, "name", ",");
Run Code Online (Sandbox Code Playgroud)

哪个"name"是来自对象的JavaBeans属性aList.

我发现只有StringUtils具有join的方法,但它只是一个变换List<String>成一个分离String.

就像是

StringUtils.join(BeanUtils.getArrayProperty(aList, "name"), ",")
Run Code Online (Sandbox Code Playgroud)

这很快,值得使用.BeanUtils会抛出2个已检查的异常,所以我不喜欢它.

java apache-commons separator apache-stringutils apache-commons-collection

8
推荐指数
2
解决办法
3972
查看次数

为什么我不能在List上使用Apache的StringUtils.join?

当我尝试

StringUtils.join(myList,',');
Run Code Online (Sandbox Code Playgroud)

我得到编译失败:

cannot find symbol
symbol  : method join(java.util.List,char)
Run Code Online (Sandbox Code Playgroud)

但以下工作:

StringUtils.join(myList.toArray(),',');
Run Code Online (Sandbox Code Playgroud)

文档(阿帕奇共享郎2.5)似乎表明,两者都应该工作,因为它们都记录:

public static String join(Collection collection,
                      char separator)
Run Code Online (Sandbox Code Playgroud)

public static String join(Object[] array,
                      char separator)
Run Code Online (Sandbox Code Playgroud)

有任何想法吗?为了记录,我正在进口import org.apache.commons.lang.StringUtils;

java collections apache-commons apache-stringutils

7
推荐指数
1
解决办法
1万
查看次数

StringUtils.capitalize()的反函数

有方便的方法StringUtils.capitalize()apache-commons-lang库中.但我找不到成对逆方法,它会使单词中的第一个字母为小写.这种方法存在吗?

java apache-stringutils

6
推荐指数
1
解决办法
1371
查看次数

当输入为"???"时,StringUtils isNumeric返回true,为什么?

我正在阅读commons.apache.org isNumeric方法定义,它指出:

StringUtils.isNumeric("???") = true;
Run Code Online (Sandbox Code Playgroud)

我不确定为什么"???"被认为是数字.我的猜测是:

  • A "?"被认为是unicode数字
  • 它是某种正则表达式

isNumeric方法定义

java apache-stringutils

6
推荐指数
1
解决办法
753
查看次数

Java 中转义字符以避免 XSS

我需要转义字符以避免 XSS。我正在使用 org.apache.commons.lang.StringEscapeUtils.escapeHtml(String str),它通过以下方式提供帮助:

原始输入

" onmouseover=alert() src="
Run Code Online (Sandbox Code Playgroud)

转义 HTML 后变成

&quot; onmouseover=alert() src=&quot;
Run Code Online (Sandbox Code Playgroud)

但是,在某些情况下,反射的输入会被单引号捕获,例如:

test'];}alert();if(true){//
Run Code Online (Sandbox Code Playgroud)

在这种特殊情况下,转义 HTML 不会产生任何效果。然而,org.apache.commons.lang.StringEscapeUtils 还有一个名为 escapeJavascript(String str) 的方法,它将输入转换为:

test\'];}alert();if(true){\/\/
Run Code Online (Sandbox Code Playgroud)

这里的问题是,你会先转义 HTML 然后转义 Javascript 来清理你的输入吗?另一种方法是手动用 \' 替换单引号字符。

任何帮助将不胜感激!

javascript java xss apache-stringutils

5
推荐指数
1
解决办法
8574
查看次数