gpt4 book ai didi

regex - 两个正则表达式之间的区别: “([^”] * )“vs ”(。*?)“

转载 作者:行者123 更新时间:2023-12-02 07:30:31 25 4
gpt4 key购买 nike

我正在学习有关使用正则表达式的 cucumber 步长定义。我遇到了以下不同用法,想知道在双引号中捕获组的两种方法之间是否存在实质性区别:

方法一:"([^"]*)"
方法二:"(.*?)"
例如,考虑一个字符串输入:'the output should be "pass!"'。两种方法都将捕获pass!。是否存在两种方法截然不同的投入?还是等价的?

谢谢

最佳答案

好吧,用肉眼看他们看起来一样。但略有不同。看一下这个例子:

输入:

a " regex
example is
here" please
"([^"]*)"的输出:
 regex
example is
here

并且, "(.*?)"的输出为空。
.*?表示除 \n之外的任何字符(0次或多次),并且引号之间的换行符很少( ")。如果我们在正则表达式中使用它,则需要给正则表达式引擎一个提示,以使用 Multiline匹配。

关于regex - 两个正则表达式之间的区别: “([^”] * )“vs ”(。*?)“,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22287292/

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