`

Guava部分字符串处理工具类的例子

    博客分类:
  • java
阅读更多

1.CaseFormat

import com.google.common.base.CaseFormat;
import static com.le.test.Printer.*;

/**
 *
 * @author zhongchenghui
 */
public class CaseFormatTest {

    public static void main(String[] args) {
        println(CaseFormat.LOWER_CAMEL.to(CaseFormat.UPPER_UNDERSCORE, "areaCode"));// returns "constantName"
        println(CaseFormat.LOWER_HYPHEN.to(CaseFormat.LOWER_UNDERSCORE, "area-code"));// returns "constantName"
        println(CaseFormat.LOWER_UNDERSCORE.to(CaseFormat.LOWER_CAMEL, "area_code"));// returns "constantName"
        println(CaseFormat.UPPER_CAMEL.to(CaseFormat.UPPER_CAMEL, "AreaCode"));// returns "constantName"
        println(CaseFormat.UPPER_UNDERSCORE.to(CaseFormat.UPPER_UNDERSCORE, "AREA_CODE"));// returns "constantName"
    }
}

public class Printer {

    public static void println(Object object) {
        System.out.println(object);
    }
}

 2.CharMatcher

import com.google.common.base.CharMatcher;
import static com.le.test.Printer.*;

/**
 *
 * @author zhongchenghui
 */
public class CharMatcherTest {

    public static void main(String[] args) {
        String string = " sf4s  dfI54YOd        IUYIU   234jlklsf23 ";
        //移除control字符
        println(CharMatcher.JAVA_LOWER_CASE.removeFrom(string));
        //只保留数字字符
        println(CharMatcher.DIGIT.retainFrom(string));
        //去除两端的空格,并把中间的连续空格替换成单个空格
        println(CharMatcher.WHITESPACE.trimAndCollapseFrom(string, ' '));
        //用*号替换所有数字
        println(CharMatcher.JAVA_DIGIT.replaceFrom(string, "*"));
        // 只保留数字和小写字母
        println(CharMatcher.JAVA_DIGIT.or(CharMatcher.JAVA_LOWER_CASE).retainFrom(string));
    }
}

 3.Joiner

import com.google.common.base.Joiner;
import static com.le.test.Printer.*;
import java.util.Arrays;

/**
 *
 * @author zhongchenghui
 */
public class JoinerTest {

    public static void main(String[] args) {
        println(Joiner.on(";").skipNulls().join("Harry", null, "Ron", "Hermione"));
        println(Joiner.on(";").useForNull("Tic").join("Harry", null, "Ron", "Hermione"));
        println(Joiner.on(",").join(Arrays.asList(1, 5, 7))); // returns "1,5,7"
    }
}

 4.Splitter

import com.google.common.base.Splitter;
import com.google.common.collect.Lists;
import static com.le.test.Printer.*;

/**
 *
 * @author zhongchenghui
 */
public class SplitterTest {

    public static void main(String[] args) {

        println(Lists.newArrayList(Splitter.on("##").trimResults().omitEmptyStrings().split("a##b##")));
        println(Lists.newArrayList(Splitter.on("##").trimResults().omitEmptyStrings().split(" a ##b ## ")));
        println(Lists.newArrayList(Splitter.on("##").trimResults().omitEmptyStrings().split(" a ###b #c# d##")));
        println(Lists.newArrayList(Splitter.on("##").trimResults().omitEmptyStrings().split("")));
    }
}

 

 

分享到:
评论

相关推荐

    Google的guava实战

    Guava的字符串处理工具包括了对字符串的空值检查、分割、截取、匹配等常见操作的封装,如Strings工具类。使用Guava的字符串处理工具可以避免编写冗长的字符串操作代码,同时使代码更加易于阅读和维护。 在I/O操作...

    guava-30.1-jre.jar

    Guava是Google开发的一个开源Java库,包含了众多的实用工具类和集合框架,极大地提高了Java开发的效率。在本例中,我们关注的是"guava-30.1-jre.jar",这是一个针对Java运行环境(JRE)优化的Guava版本,版本号为...

    java从字符串中提取数字的简单实例

    正则表达式是处理字符串的强大工具,可以用来匹配和替换特定模式。在这个例子中,我们可以使用`[^0-9]`来匹配非数字字符,并用空字符串替换它们,从而得到纯数字的字符串。示例代码如下: ```java public static ...

    Guava_for_Netflix

    Guava 库之所以受欢迎,是因为它提供了强大的集合工具类、高效的数据处理方法、以及对并发编程的良好支持。使用 Guava 库可以显著提高 Java 开发的效率和质量,尤其当遇到复杂的集合操作、I/O 操作和并发问题时,...

    java 获取分布式唯一ID.雪花ID

    在描述中提到的`IdUtils`可能是一个自定义的工具类,提供了两种生成唯一ID的方法: 1. `IdUtils.simpleUUID()`:这通常会返回一个基于`java.util.UUID`生成的16进制字符串形式的UUID,长度为32个字符,用于生成字符...

    JDK1.6下的Base64解决方式.txt.zip

    在这个例子中,我们首先将字符串"Hello, World!"转换为字节数组,然后使用`Base64.encodeBase64()`方法进行编码。编码后的结果是一个新的字符串,我们将其打印出来。接着,我们用`Base64.decodeBase64()`方法对编码...

    GuestName处理方法

    在实际开发中,我们还可以利用工具库如Apache Commons Lang或Google Guava来辅助处理字符串。这些库提供了更多的字符串操作功能,如split、join、capitalize等。 总的来说,GuestName处理方法涉及到数据验证、格式...

    (转)java 常用工具包

    以上只是部分Java工具包的例子,实际的“java 常用工具包”可能包含这些或其他特定功能的工具类。通过理解和使用这些工具,开发者可以提高代码质量,减少重复工作,提高生产力。对于初学者来说,掌握这些工具包的...

    GuavaExample

    Guava是Google开发的一个Java库,它包含了许多用于核心Java库的实用工具类。这个名为"GuavaExample"的项目显然旨在提供一系列示例,帮助开发者更好地理解和运用Guava库。Guava提供了丰富的数据结构、集合操作、并发...

    java 开发的各种例子

    11. **工具类库**:例如Apache Commons、Guava等第三方库,它们提供了大量实用的工具类,可以简化开发工作。 12. **源码分析**:通过对示例代码的阅读和分析,开发者可以学习到如何优化代码、提高程序性能,以及...

    GuavaSample:番石榴的例子

    **标题解析:** "GuavaSample:番石榴的例子" 这个标题暗示了这是一个关于Google Guava库的示例项目,番石榴(Guava)是Google的一个核心库,提供了许多Java开发人员常用的实用工具类。这里提到的是一个具体的示例,...

    html 标记大全.rar

    Java工具类通常是一些静态方法集合,这些方法执行特定任务,如数学计算、字符串处理、日期和时间操作等。在Java中,我们可以创建自己的工具类,也可以利用已有的库,如Apache Commons或Guava。工具类可以提高代码的...

    JavaCachingwithGuava

    Guava 是谷歌开源的核心 Java 库集合,提供了许多实用工具类,如集合、原生类型支持、并发库、字符串处理等。这些库是其他项目的基础构建模块。在 Guava 中,`com.google.common.cache` 包包含了缓存相关的类库。 ...

    Java泛型与容器详细笔记.pdf (带书签)

    最后,文档中展示了一个简单的Java程序示例,它创建了一个List,并向其中添加了不同类型的对象,包括字符串、日期对象、自定义对象Dog以及整数。然后进行了一系列的操作,如检查列表的大小、清空列表、删除特定元素...

    javabase64-1.3.1__包 和使用实例.rar

    在这个例子中,我们首先创建了一个包含文本的字节数组,然后使用`Base64.getEncoder().encodeToString()`方法将其编码为Base64字符串。接着,我们使用`Base64.getDecoder().decode()`方法将Base64字符串解码回原始...

    开源jar包.....

    例如,Apache Commons Lang是一个提供实用工具类的开源库,它包含各种通用功能,如字符串处理、日期时间操作等,大大简化了开发者的工作。另一个例子是Spring框架,它是一个全面的企业级应用开发框架,提供了依赖...

    番石榴:网络研讨会的例子

    Guava是Google提供的一套Java库,包含了大量的实用工具类,如集合框架的扩展、并发工具、缓存机制、字符串处理、I/O操作等。在网络研讨会的例子中,Guava可能被用来优化数据结构,提高并发性能,或者作为核心组件来...

    filter 修改jsp servlet response返回的内容

    在这个例子中,我们向每个响应添加了字符串"FILTERED_CONTENT_"。 7. **动态配置**: 如果你不想在`web.xml`中硬编码过滤器配置,可以使用Servlet 3.0及以上版本提供的注解驱动配置,直接在Filter类上使用`@Web...

    【zk开发】use和apply的区别

    在这里,`apply`方法接收一个字符串,并返回其长度。这个例子展示了如何通过`apply`将一个函数对象(`function`)应用于参数("Hello")上。 在某些库中,如Guava或Apache Commons,`use`可能出现在资源管理的上下...

    JGrega_Java_Examples:Java_examples

    10. **Java API和库的使用**:示例可能涵盖了Java标准库中的各种类和方法,如日期时间API、数学运算、字符串处理等,以及第三方库的使用,如Apache Commons、Guava等。 "JGrega_Java_Examples-master"这个压缩包...

Global site tag (gtag.js) - Google Analytics