铁马冰河2000

导航

统计

String解析工具类-StringParseUtil

============================================================================String解析工具类:

复制代码
import java.util.ArrayList;
import java.util.List;
import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class StringParseUtil {
    
    /**解析获取{}内容
     * @param input
     * @return
     */
    public static List<String> parseBetween3(String input) {
        if(StringCheckUtil.isEmpty(input)) {
            return new ArrayList<>();
        }
        String pattern = "\\{([^\\}]*)\\}";
        Matcher matcher = Pattern.compile(pattern).matcher(input);
        List<String> strList = new ArrayList<>();
        while (matcher.find()) {
            String output = matcher.group(1);
            strList.add(output);
        }
        return strList;
    }
    
    /**解析获取[]内容
     * @param input
     * @return
     */
    public static List<String> parseBetween2(String input) {
        if(StringCheckUtil.isEmpty(input)) {
            return new ArrayList<>();
        }
        String pattern = "\\[([^\\]]*)\\]";
        Matcher matcher = Pattern.compile(pattern).matcher(input);
        List<String> strList = new ArrayList<>();
        while (matcher.find()) {
            String output = matcher.group(1);
            strList.add(output);
        }
        return strList;
    }
    
    /**解析获取()内容
     * @param input
     * @return
     */
    public static List<String> parseBetween(String input) {
        if(StringCheckUtil.isEmpty(input)) {
            return new ArrayList<>();
        }
        String pattern = "\\(([^\\)]+)\\)";
        Matcher matcher = Pattern.compile(pattern).matcher(input);
        List<String> strList = new ArrayList<>();
        while (matcher.find()) {
            String output = matcher.group(1);
            strList.add(output);
        }
        return strList;
    }
}
复制代码

============================================================================String解析工具测试类:

复制代码
    /**
     * 解析获取()内容
     */
    @Test
    public void test_parseBetween() {
        String input = "(test) data (测试)(data)";
        System.out.println(StringParseUtil.parseBetween(input));
        
        String input2 = "[test] {data} [测试](data)";
        System.out.println(StringParseUtil.parseBetween2(input2));
        
        String input3 = "{test} {data} {测试}(data)";
        System.out.println(StringParseUtil.parseBetween3(input3));
    }
复制代码

 

posted on   铁马冰河2000  阅读(235)  评论(0编辑  收藏  举报

相关博文:
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
点击右上角即可分享
微信分享提示