eErrorT ChainCtrlInitChains(ChainCtrlT* pChainCtrl,
char* name,
int instance)
{
....
}
eErrorT ChainCtrlInit(ChainCtrlT* pChainCtrl, void* pOwner)
{
....
}
open(my $FILE, "< a.c") or die $!;
my @arr = <$FILE>;
foreach(@arr){
if ($_ =~ /^ \S+ \s+ \S+ \s* \((.+?) \) /xsmg) {
my $arg = $1;
my @arr = map /(\w+)$/, split /\W*?,\W*/, $arg;
print my @temp = map "$_\n", @arr
unless $_ =~ /;\s*$/;
}
}
基本上我提取函數從函數定義的參數。
但在這種情況下,我只能提取2次函數(ChainCtrlInit)而不是第一個函數(ChainCtrlinitchains)參數。
所需的輸出
pChainCtrl
name
instance
pChainCtrl
pOwner
OUTPUT我得到
pChainCtrl
pOwner
感謝..現在工作得很好。我是Perl新手。認爲它將從「(」直到它看到「)」開始檢查,即使它在單獨的行中。 –
節省了大量的工作與我的'$文件= {做當地$ /; '而不是將它分成幾行以再次加入它們。 – cjm