首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >java replaceAll()

java replaceAll()
EN

Stack Overflow用户
提问于 2009-07-07 13:42:15
回答 3查看 18.1K关注 0票数 2

用"0“替换"N/A”的replaceAll()函数的正则表达式是什么?

输入:N/A

输出:0

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2009-07-07 13:42:58

假设s是一个String

代码语言:javascript
复制
s.replaceAll("N/A", "0");

为此,您甚至不需要正则表达式。这就足够了:

代码语言:javascript
复制
s.replace("N/A", "0");
票数 14
EN

Stack Overflow用户

发布于 2009-07-07 13:43:53

为什么要使用正则表达式呢?如果不需要模式,只需使用replace

代码语言:javascript
复制
String output = input.replace("N/A", "0");
票数 8
EN

Stack Overflow用户

发布于 2012-10-18 11:59:22

您可以尝试更快的代码。如果字符串仅包含N/A:

代码语言:javascript
复制
return str.equals("N/A") ? "0" : str;

如果字符串包含多个N/A:

代码语言:javascript
复制
return join(string.split("N/A"), "0")
            + (string.endsWith("N/A") ? "0" : "");

其中join()是方法:

代码语言:javascript
复制
private String join(String[] split, String string) {
    StringBuffer s = new StringBuffer();
    boolean isNotFirst = false;
    for (String str : split) {
        if (isNotFirst) {
            s.append(string);
        } else {
            isNotFirst = true;
        }
        s.append(str);
    }
    return s.toString();
}

速度是原来的两倍

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1092416

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档