gpt4 book ai didi

regex - 使用正则表达式在没有引号的情况下捕获双引号内的字符串

转载 作者:行者123 更新时间:2023-12-01 12:04:41 25 4
gpt4 key购买 nike

有一个函数脚本,var f = new Process("name01", "code01", "version01");我想使用正则表达式来过滤以获取 name01 属性。但是这个过滤器: "([^"]+)" 适用于所有属性。

"name01"
"code01"
"version01"

如何在没有双引号的情况下获取 name 属性,这里是 name01 ,它是函数中的第一个参数。它只出现在 Process 关键字之后。

编辑 1:在我的第一个问题中,两种模式 (?<=Process\(")[^\r\n"]*\bProcess\("([^"]+)"[^()]*\)为案件工作。谢谢。

编辑 2:碰巧另一个要求是从下面的文本脚本中检索 process 函数的所有 3 个参数:
var f = pmb.Process("name01", "code01", "version01")
.Task("name01", "code01");

我需要获取流程函数参数:
name01
code01
version01

并且不需要任务函数参数。首先(感谢第四只鸟),
\bProcess\([^()]*\)

这仅匹配 Process("name01", "code01", "version01") , 我应该使用第二个模式来过滤它以获得 3 个参数吗?谢谢!

最佳答案

也许,

(?<=\(")[^\r\n"]*
或者
(?<=Process\(")[^\r\n"]*
如果支持后视,我想可能可以研究一下。
RegEx Demo 1
RegEx Demo 2

如果您希望简化/更新/探索表达式,在 regex101.com 的右上角面板中已进行了说明。 .您可以在 this debugger link中查看匹配步骤或修改它们,如果你有兴趣。调试器演示了如何 a RegEx engine可能会逐步使用一些样本输入字符串并执行匹配过程。

正则表达式电路
jex.im可视化正则表达式:
enter image description here

关于regex - 使用正则表达式在没有引号的情况下捕获双引号内的字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58907112/

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