正则表达式捕获可移动组

Regex capturing moveable groups

如何捕获可以改变位置的组?例如,如果我有一个包含文件名和文件夹名的命令,我想要一个可以捕获这两个命令的名称和文件夹名的正则表达式:

--name "name" --folderName "folderName"

--folderName "folderName" --name "name"

我可以这样写:

"(--name (?<name>\w+) --folderName (?<folderName>\w+))|(--folderName (?<folderName>\w+) --name (?<name>\w+))"

但这显然很长​​,如果我有两个以上的组,它会更长。我想知道是否有更有效的方法来做到这一点?

试试这个:"(?<=--name \")[^\"]+|(?<=--folderName \")[^\"]+"

在这里测试:https://regex101.com/r/ipMitv/1