You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Java中如何使用正则表达式提取字符串中间的指定内容

实现方案

正则规则说明

针对给定字符串[{"Tpid":"23, 45"}]的固定结构,使用正则"Tpid":"([^"]+)"即可定位目标内容:

  • 固定匹配前缀"Tpid":",精准定位到Tpid字段的值起始位置
  • 捕获组([^"]+)匹配所有非双引号字符,直到遇到值末尾的闭合双引号,拿到Tpid对应的原始值
  • 提取到原始值后,移除其中的空白字符即可得到目标结果23,45

Java实现代码

import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class TpidExtract {
    public static void main(String[] args) {
        String source = "[{\"Tpid\":\"23, 45\"}]";
        // 编译正则规则
        Pattern pattern = Pattern.compile("\"Tpid\":\"([^\"]+)\"");
        Matcher matcher = pattern.matcher(source);
        
        if (matcher.find()) {
            // 提取捕获组内容,清除值内空白得到最终结果
            String result = matcher.group(1).replaceAll("\\s", "");
            System.out.println(result);
        }
    }
}

运行上述代码会直接输出23,45。

补充说明

  • 如果待处理的是标准JSON格式字符串,优先使用JSON解析库(Gson、Jackson等)做字段提取,容错性远高于正则,正则仅适合固定格式的简单字符串快速提取场景
  • 如果Tpid字段和冒号之间可能存在空格、或者值内存在转义双引号,需要对应调整正则匹配规则适配场景
  • 若不需要移除值内的空格,直接返回matcher.group(1)即可得到原始值23, 45

内容的提问来源于stack exchange,提问作者Tiwari Richa

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.28 00:18:15