全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

java正则表达式实现提取需要的字符并放入数组【ArrayList数组去重复功能】

本文实例讲述了java正则表达式实现提取需要的字符并放入数组。分享给大家供大家参考,具体如下:

这里演示Java正则表达式提取需要的字符并放入数组,即ArrayList数组去重复功能。

具体代码如下:

package com.test.tool;
import java.util.ArrayList;
import java.util.HashSet;
import java.util.regex.*;
public class MatchTest {
  public static void main(String[] args)
  {
    String regex = "[0-9]{5,12}";
    String input = "QQ120282458,QQ120282458 QQ125826";
    Pattern p = Pattern.compile(regex);
    Matcher m = p.matcher(input);
    ArrayList al=new ArrayList();
    while (m.find()) {
      al.add(m.group(0));
    }
    System.out.println("去除重复值前");
    for (int i=0;i<al.size();i++)
    {
      System.out.println(al.get(i).toString());
    }
    //去除重复值
    HashSet hs=new HashSet(al);
    al.clear();
    al.addAll(hs);
    System.out.println("去除重复值后");
    for (int i=0;i<al.size();i++)
    {
      System.out.println(al.get(i).toString());
    }
  }
}

输出结果为:

去除重复值前
120282458
120282458
125826
去除重复值后
125826
120282458

改进版:弄成一个bean:

package com.test.tool;
import java.util.ArrayList;
import java.util.HashSet;
import java.util.regex.*;
public class MatchTest {
  private String regex;
  private String input;
  private ArrayList al;
  public String getRegex() {
    return regex;
  }
  public void setRegex(String regex) {
    this.regex = regex;
  }
  public String getInput() {
    return input;
  }
  public void setInput(String input) {
    this.input = input;
  }
  public ArrayList getAl() {
    return al;
  }
  public void setAl(ArrayList al) {
    this.al = al;
  }
  public MatchTest(String regex,String input)
  {
    Pattern p=Pattern.compile(regex);
    Matcher m=p.matcher(input);
    ArrayList myal=new ArrayList();
    while (m.find())
    {
      myal.add(m.group());
    }
    HashSet hs=new HashSet(myal);
    myal.clear();
    myal.add(hs);
    this.setRegex(regex);
    this.setInput(input);
    this.setAl(myal);
  }
  public MatchTest(){}
  public static void main(String[] args){
     String regex1 = "[0-9]{5,12}";
     String input1="QQ120282458,QQ120282458 QQ125826";
     //String input1="QQ";
    MatchTest mt=new MatchTest(regex1,input1);
    for (int i=0;i<mt.getAl().size();i++)
    {
      System.out.println(mt.getAl().get(i).toString());
    }
  }
}

PS:这里再为大家提供2款非常方便的正则表达式工具供大家参考使用:

JavaScript正则表达式在线测试工具:
http://tools./regex/javascript

正则表达式在线生成工具:
http://tools./regex/create_reg

希望本文所述对大家java程序设计有所帮助。


# java  # 正则表达式  # 提取  # 字符  # 放入数组  # ArrayList  # 数组  # 去重复  # java使用Stream流对自定义对象数组去重的实现  # Java对int[]数组做新增删除去重操作代码  # Java数组去重复的18种方法示例  # Java数组的去重  # JavaScrip数组去重操作实例小结  # Java实现的数组去重与排序操作详解  # 给大家  # 所述  # 程序设计  # 弄成  # 再为  # 改进版  # 测试工具  # 讲述了  # args  # input  # void  # static  # String  # main  # find  # al  # group  # add  # compile 


相关文章: 如何设置并定期更换建站之星安全管理员密码?  营销式网站制作方案,销售哪个网站招聘效果最好?  建站一年半SEO优化实战指南:核心词挖掘与长尾流量提升策略  SAX解析器是什么,它与DOM在处理大型XML文件时有何不同?  怎么用手机制作网站链接,dw怎么把手机适应页面变成网页?  动图在线制作网站有哪些,滑动动图图集怎么做?  C++ static_cast和dynamic_cast区别_C++静态转换与动态类型安全转换  家具网站制作软件,家具厂怎么跑业务?  教程网站设计制作软件,怎么创建自己的一个网站?  成都网站制作公司哪家好,四川省职工服务网是做什么用?  惠州网站建设制作推广,惠州市华视达文化传媒有限公司怎么样?  官网建站费用明细查询_企业建站套餐价格及收费标准指南  如何零基础在云服务器搭建WordPress站点?  建站VPS能否同时实现高效与安全翻墙?  网站企业制作流程,用什么语言做企业网站比较好?  建站之星安装提示数据库无法连接如何解决?  怀化网站制作公司,怀化新生儿上户网上办理流程?  如何通过西部建站助手安装IIS服务器?  表情包在线制作网站免费,表情包怎么弄?  建站主机选哪家性价比最高?  如何配置FTP站点权限与安全设置?  实惠建站价格推荐:2025年高性价比自助建站套餐解析  如何在西部数码注册域名并快速搭建网站?  如何在宝塔面板中修改默认建站目录?  网站制作专业公司有哪些,如何制作一个企业网站,建设网站的基本步骤有哪些?  太原网站制作公司有哪些,网约车营运证查询官网?  招贴海报怎么做,什么是海报招贴?  建站之星代理平台如何选择最佳方案?  如何用搬瓦工VPS快速搭建个人网站?  三星网站视频制作教程下载,三星w23网页如何全屏?  深圳网站制作培训,深圳哪些招聘网站比较好?  江苏网站制作公司有哪些,江苏书法考级官方网站?  如何通过.red域名打造高辨识度品牌网站?  官网自助建站平台指南:在线制作、快速建站与模板选择全解析  建站之星安装路径如何正确选择及配置?  宁波免费建站如何选择可靠模板与平台?  如何通过多用户协作模板快速搭建高效企业网站?  阿里云网站制作公司,阿里云快速搭建网站好用吗?  简单实现Android验证码  如何基于PHP生成高效IDC网络公司建站源码?  专业网站制作企业网站,如何制作一个企业网站,建设网站的基本步骤有哪些?  建站之星安全性能如何?防护体系能否抵御黑客入侵?  如何破解联通资金短缺导致的基站建设难题?  实例解析Array和String方法  制作ppt免费网站有哪些,有哪些比较好的ppt模板下载网站?  网站制作价目表怎么做,珍爱网婚介费用多少?  如何制作公司的网站链接,公司想做一个网站,一般需要花多少钱?  如何在Windows服务器上快速搭建网站?  北京的网站制作公司有哪些,哪个视频网站最好?  已有域名能否直接搭建网站? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。