欢迎来到万象站长学堂!

正则表达式

当前位置: 主页 > 网络编程 > 正则表达式 > 文章列表

关于.*匹配和.*?匹配的区别解析

时间:2025-10-25 18:38:33|栏目:正则表达式|点击:18 次

掉坑回忆

我有一组json数据如下:

"resultItemId": "BDEECEB17F30435DBF79E07CEF8E8745",
"bidObjectId": "1CFE15A68629489A81750DFE2C9A677E",
"bidObjectName": "华侨城集团有限公司2023至2025年度内部审计及项目后评价服务",
"inbidResultId": "109BC1A31C6140D5ACC901DDE6CD6754",
"公司ID": "09d90ca99f5c434181b29ee1bf33a354",
"中标候选人名称": "天职国际会计师事务所(特殊普通合伙)",
"state":1

我的目的是匹配出所有key为非中文的数据,即

"resultItemId": "BDEECEB17F30435DBF79E07CEF8E8745",
"bidObjectId": "1CFE15A68629489A81750DFE2C9A677E",
"bidObjectName": "华侨城集团有限公司2023至2025年度内部审计及项目后评价服务",
"inbidResultId": "109BC1A31C6140D5ACC901DDE6CD6754",
"state":1

便使用了正则表达式

String reg = "\"\\w+\":.*,";

但是只匹配到了

"state":1

解决方法以及原理

方法:将正则表达式更换为

String reg = "\"\\w+\":.*?,";

原理:.*为贪婪模式,会将全文都作为匹配结果“囊括”进去,可是.*?会匹配满足条件的每一条数据。

到此这篇关于关于.*匹配和.*?匹配的区别的文章就介绍到这了,更多相关.*匹配和.*?匹配的区别内容请搜索万象站长学堂以前的文章或继续浏览下面的相关文章希望大家以后多多支持万象站长学堂!

上一篇:正则表达式中^和$的含义与实例代码

栏    目:正则表达式

下一篇:正则表达式中(?s)与(?m)的区别解析

本文标题:关于.*匹配和.*?匹配的区别解析

本文地址:https://zhanzhang.eapis.site/html/2540.html

您可能感兴趣的文章

广告投放 | 联系我们 | 版权申明

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:120507403 | 邮箱:120507403@qq.com

Copyright © 2002-2025 万象站长学堂 版权所有沪ICP备2021023961号-8 粤公网安备 13010202004186