当前位置: 代码网 > it编程>编程语言>正则表达式 > 关于.*匹配和.*?匹配的区别解析

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

2024年05月15日 正则表达式 我要评论
掉坑回忆我有一组json数据如下:"resultitemid": "bdeeceb17f30435dbf79e07cef8e8745","bidobjectid": "1cfe15a68629489a

掉坑回忆

我有一组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+\":.*?,";

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

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

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com