java 数组正则表达式_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

{

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

{

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

{

System.out.println(mt.getAl().get(i).toString());

}

}

}

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

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

相关文章

总结

如果觉得编程之家网站内容还不错,欢迎将编程之家网站推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。

如您喜欢交流学习经验,点击链接加入交流1群:1065694478(已满)交流2群:163560250

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值