繁体   English   中英

使用正则表达式删除不需要的逗号

[英]Use regex to remove unwanted commas

我正在创建一个应用程序,我在其中生成了这样的字符串:

 hihibjj,,,,,,,ghjjjj, , ,kartik.isworking@gmail.com,,,,karan.adep@gmail.com, android-developer-support@google.com, prerna.mungekar@hamarisuraksha.com

我想要的是删除不需要的逗号,只应存在单个逗号分隔值。

我试过的代码

for (int i = 0; i < temp.length; i++) {
  for (int j = 0; j < emailSeperated.size(); j++) {
    if (temp[i].trim().equals(emailSeperated.get(j).trim())) {
      strEmailValue = strEmailValue.replace(temp[i], "").trim();
      Log.e("strEmail trimmed value", strEmailValue);
    } else if (temp[i].trim().equals(emailSeperated.get(j).trim())) {
      strEmailValue = strEmailValue.replaceAll(temp[i] + ",", "").trim();
    }
  }
} 

只需找到: ,,+并替换为: ,

你也可以使用lookbehind。

正则表达式:

(?<=,) ?,

替换字符串:

Empty string

DEMO

System.out.println("hihibjj,,,,,,,ghjjjj, , ,kartik.isworking@gmail.com,,,,karan.adep@gmail.com, android-developer-support@google.com, prerna.mungekar@hamarisuraksha.com".replaceAll("(?<=,) ?,", ""));

输出:

hihibjj,ghjjjj,kartik.isworking@gmail.com, karan.adep@gmail.com, android-developer-support@google.com, prerna.mungekar@hamarisuraksha.com 
String as = "as,,,,,,";
as= as.replaceAll(",,+",",");

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM