gpt4 book ai didi

正则表达式差异 : (\w+)? 和 (\w*)

转载 作者:行者123 更新时间:2023-12-03 11:24:05 28 4
gpt4 key购买 nike

(\w+)?有什么区别吗和 (\w*)在正则表达式中?

似乎是一样的,不是吗?

最佳答案

(\w+)?(\w*)两者匹配相同(0..+inf 单词字符)

但是,有一点不同:

在第一种情况下,如果正则表达式的这部分匹配 "" ,捕获组不存在。在第二种情况下,它是空的。在某些语言中,前者表现为 null而后者应该总是 "" .

例如,在 Javascript 中,

/(\w*)/.exec("")  // ["", ""]
/(\w+)?/.exec("") // ["", undefined]

在 PHP ( preg_match ) 中,在前一种情况下,匹配数组中根本不存在相应的键: http://3v4l.org/DB6p3#v430

关于正则表达式差异 : (\w+)? 和 (\w*),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14373310/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com