首页 > 其他 > 详细

正则表达式的一些应用

时间:2020-03-03 02:14:56      阅读:82      评论:0      收藏:0      [点我收藏+]
package test;
 
 
import java.io.*;
import java.net.MalformedURLException;
import java.net.URI;
import java.net.URL;
import java.nio.charset.Charset;
import java.sql.SQLClientInfoException;
import java.text.DateFormat;
import java.text.ParsePosition;
import java.text.SimpleDateFormat;
import java.util.*;
import java.util.concurrent.CountDownLatch;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import java.util.zip.InflaterInputStream;
 
import javax.annotation.processing.FilerException;
import javax.management.RuntimeErrorException;
import javax.swing.text.AbstractDocument.LeafElement;

import privateclass.Filterby_Name;
import privateclass.Filterby_hidden;
import privateclass.Filterby_java;
import privateclass.MyBufferedReader;
import privateclass.Person;
 
public class Main {
 
	/*
	 * 正则表达式练习
	 */
    public static void main(String[] args) throws Exception {

    	practise1();
    	practise2();
    	practise3();
    	practise4();
    }

    /*
     * 治疗口吃
     * 我我我我  ...我我.我玉玉.. 玉玉玉树树..树树.临..临临临临风.风风风风
     * 
     */
    private static void practise1() {
    	String s = "我我我我  ...我我.我玉玉.. 玉玉玉树树..树树.临..临临临临风.风风风风";
    	s = s.replaceAll("\\.", "");
    	s = s.replaceAll(" ", "");
    	s = s.replaceAll("(.)\\1+", "$1");
    	System.out.println(s);
    	
    }

    /*
     * 将ip进行排序
     * 192.168.100.1 2.2.2.23 100.2.53.3 55.25.26.6
     */
	private static void practise2() {
		String s = "192.168.100.1 2.2.2.23 100.2.53.3 55.25.26.6";
		s = s.replaceAll("(\\d+)", "00$1");
		s = s.replaceAll("0*(\\d{3})", "$1");
		TreeSet<String> ts = new TreeSet<String>();
		String []str = s.split(" +");
		for(String name :str)
		{
			ts.add(name);
		}
		for(String name: ts)
		{
			System.out.println(name.replaceAll("0*(\\d)", "$1"));
		}
		
	}

	/*
	 * 判断是否是邮箱
	 */
	private static void practise3() {
		
		String s = "9861805@qq.com.cn";
		String reg = "\\w+@\\w+(\\.\\w+)+";
		boolean b = s.matches(reg);
		System.out.println(b);
	}
	
	/*
	 * 网页爬虫找出邮箱
	 */
	private static void practise4() throws Exception {
		URL url = new URL("https://blog.csdn.net/weixin_39917347/article/details/81707106");
		BufferedReader br = new BufferedReader(new InputStreamReader(url.openStream()));
		
		Pattern p = Pattern.compile("\\w+@\\w+(\\.\\w+)+");
		
		String line = null;
		while((line = br.readLine()) != null)
		{
			Matcher m = p.matcher(line);
			
			while(m.find())
			{
				System.out.println(m.group());
			}
			
		}
		br.close();
		
	}


}

  

正则表达式的一些应用

原文:https://www.cnblogs.com/WINDZLY/p/12398898.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!