欢迎来到3672js教程,我们关注js教程、js框架、js代码特效等。

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

3672Js.Com2024-03-23 00:53 来源:未知 阅读:12159 关注度2

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


目录
  • 掉坑回忆
  • 解决方法以及原理
    • 方法:将正则表达式更换为

掉坑回忆

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

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

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

您可能感兴趣的文章:
  • 正则表达式中.+?与.*?的区别
  • 正则表达式中的 .*? 或 .*+ 的意思
  • 解析正则表达式中的.*,.*?,.+?的含义

本站文章为3672js教程网友分享投稿,版权归原作者,欢迎任何形式的转载,但请务必注明出处。同时文章内容如有侵犯了您的权益,请联系我们处理。
评论已被关闭