首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >从字符串的开头修剪逗号?

从字符串的开头修剪逗号?
EN

Stack Overflow用户
提问于 2014-08-19 21:44:05
回答 5查看 118关注 0票数 1

我有这列名单

印度尼西亚首都雅加达。 东京,日本首都。 马尼拉,菲利普的首都。

我想去掉东京和马尼拉的主要逗号。如何编写通用代码,使其能够检测字符串是否由逗号引导并删除?

预期结果:

印度尼西亚首都雅加达。 东京,日本首都。 马尼拉,菲利普的首都。

非常感谢你的帮助。:)

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2014-08-19 21:46:27

您可以使用正则表达式来完成这一任务:

代码语言:javascript
运行
复制
for(int index = 0; index < list.size(); index++) {
    String line = list.get(index);
    if (line != null && line.charAt(0) == ',') {
        line = line.replaceFirst("^,+");
        list.set(index, line); // Replace the string in the list
    }
}

如果您使用的是Java 5+,它应该可以工作。

票数 3
EN

Stack Overflow用户

发布于 2014-08-19 21:48:47

试着做这样的事情:

代码语言:javascript
运行
复制
String s = ",Manila, the Capital City of Phillipines.";
if( s.length() > 0 && s.trim().charAt(0) == ',' ) {
    s = s.substring(s.indexOf(',')+1).trim();
}

如果您必须删除多个逗号,请使用while而不是if:

代码语言:javascript
运行
复制
String s = " ,  ,,Manila, the Capital City of Phillipines.";
while( s.length() > 0 && s.trim().charAt(0) == ',' ) {
    s = s.substring(s.indexOf(',')+1).trim();
}
票数 2
EN

Stack Overflow用户

发布于 2014-08-19 21:51:05

那么这个(它甚至会取代原来列表中的值):

代码语言:javascript
运行
复制
    ArrayList<String> list = new ArrayList<String>(); // This is your ArrayList
    Iterator<String> it = list.iterator(); // Get your list iterator
    while(it.hasNext()){ // do a while loop to manipulate the elements
        String element = it.next(); // Get the next element of your list
        element = element.replaceFirst("^,+"); // Remove the leading comma
        it.set(element); // Replace your changed element in the list
    }
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25393482

复制
相关文章

相似问题

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