gpt4 book ai didi

java - Java 中的 String.split 与 StringUtils.split 给出不同的结果

转载 作者:行者123 更新时间:2023-12-01 16:49:00 25 4
gpt4 key购买 nike

考虑如下带有分隔符 __|__ 的字符串。

String str = "a_b__|__c_d";

str.split("__\\|__") 给出 2 个分割 a_b 和 c_dStringUtils.split(str, "__|__") 或 StringUtils.split(str, "__\\|__") 给出 4 个分割 a、b、c、d,这是不需要的。

有没有办法让 StringUtils.split() 给出与 String.split() 相同的结果?

最佳答案

String.split() 有一些 very surprising语义,但它很少是你想要的。您应该更喜欢 StringUtils (或 Guava 的 Splitter ,在上一个链接中讨论)。

您的具体问题是 String.split() 采用正则表达式,而 StringUtils.split()使用每个字符作为单独的标记。您应该使用StringUtils.splitByWholeSeparator()分割整个字符串的内容。

StringUtils.splitByWholeSeparator(str, "__|__");

关于java - Java 中的 String.split 与 StringUtils.split 给出不同的结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44400969/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com