zoukankan      html  css  js  c++  java
  • java reg

    import java.io.BufferedWriter;
    import java.io.FileWriter;
    import java.io.IOException;
    import java.nio.charset.StandardCharsets;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    import java.util.ArrayList;
    import java.util.List;
    import java.util.regex.Matcher;
    import java.util.regex.Pattern;
    import java.util.stream.Collectors;
    import java.util.stream.Stream;
    
    public class FooBarMainEntry {
    
        public static void main(String[] args) {
            List<String> all = FileHelper.readFileToStringList("data.txt");
            List<Pattern> patternList = new ArrayList<Pattern>();
            patternList.add(Pattern.compile("id.{1,15}"));
            patternList.add(Pattern.compile("name.{1,13}"));
            patternList.add(Pattern.compile("att.{5,30}"));
            for(String line : all) {
                StringHelper.extractPatternFromString(patternList,line,"###");
            }
        }
    }
    
    
    class FileHelper {
        public static String readFileToString(String filePath){
            String content = "";
    
            try{
                content = new String ( Files.readAllBytes( Paths.get(filePath) ) );
            }
            catch (IOException e){
                e.printStackTrace();
            }
    
            return content;
        }
    
        public static List<String> readFileToStringList(String filePath)
        {
            List<String> result=new ArrayList<String>();
            try (Stream<String> stream = Files.lines( Paths.get(filePath), StandardCharsets.UTF_8)){
                stream.forEach(s -> result.add(s));
            }
            catch (IOException e){
                e.printStackTrace();
            }
            return result;
        }
    
        public static void overWriteStringToFile(String filePath, String content) {
    
            try{
                BufferedWriter writer = new BufferedWriter(new FileWriter(filePath));
                writer.write(content);
                writer.close();
            }
            catch(Exception e) {
                e.printStackTrace();
            }
        }
    
        public static void appendStringToFile(String filePath, String content) {
    
            try{
                BufferedWriter writer = new BufferedWriter(new FileWriter(filePath, true));
                writer.append(content);
                writer.close();
            }
            catch(Exception e) {
                e.printStackTrace();
            }
        }
    
        public static void overWriteStringListToFile(String filePath, List<String> content) {
            if(content.isEmpty()) {
                return;
            }
            try{
                BufferedWriter writer = new BufferedWriter(new FileWriter(filePath));
                writer.write(content.get(0));
                writer.append("
    ");
                for(int i =1; i< content.size()-1;++i) {
                    writer.append(content.get(i));
                    writer.append("
    ");
                }
                writer.append(content.get(content.size()-1));
                writer.close();
            }
            catch(Exception e) {
                e.printStackTrace();
            }
        }
    
        public static void appendStringListToFile(String filePath, List<String> content) {
            if(content.isEmpty()) {
                return;
            }
            try{
                BufferedWriter writer = new BufferedWriter(new FileWriter(filePath, true));
                for(int i =0; i< content.size()-1;++i) {
                    writer.append(content.get(i));
                    writer.append("
    ");
                }
                writer.append(content.get(content.size()-1));
                writer.close();
            }
            catch(Exception e) {
                e.printStackTrace();
            }
        }
    }
    
    
    class StringHelper {
        public static String extractPatternFromString(final List<Pattern> patterns, final String inputString, final String outSeperator){
            StringBuilder result = new StringBuilder();
    
            for(Pattern p : patterns) {
                Matcher matcher = p.matcher(inputString);
                while (matcher.find()) {
                    result.append(inputString.substring(matcher.start(), matcher.end()));
                    result.append(outSeperator);
                }
                matcher.reset();
            }
            System.out.println(result.toString());
            return result.toString();
        }
    }
  • 相关阅读:
    iOS-基础控件(UILabel,UITextField,UIButton,UIImageView)属性
    iOS-基础控件-UIView(bounds和frame的区别)
    iOS-Senior21-环信(代码)
    iOS-Senior21-环信
    iOS-Senior20-Map地图
    iOS-Senior20-Map定位
    UI进阶 SQLite错误码
    UI进阶 动画
    第三方类AFNetworking
    UI进阶 CocoaPods的安装使用步骤
  • 原文地址:https://www.cnblogs.com/Searchor/p/11341869.html
Copyright © 2011-2022 走看看