好吧,我已經讀了tutorials,並且爲了現在能夠清晰地看到我而頭腦太亂了。正則表達式 - 捕獲一個重複組
我想從函數簽名中捕獲參數及其類型信息。因此,考慮這樣的簽名:
function(/*string*/a,b,c)
我想要得到的部分是這樣的:
type: string
param:a
param:b
param:c
這也沒關係:
type: string
param:a
type: null (or whitespace)
param:b
type: null (or whitespace)
param:c
所以我想出了這個正則表達式這正在做重複捕捉的常見錯誤(我已明確捕捉打開):
function\(((\/\*(?<type>[a-zA-Z]+)\*\/)?(?<param>[0-9a-zA-Z_$]+),?)*\)
問題是,我不能糾正錯誤。 。:(請幫助
你在用什麼語言?如果這是一個.Net模式,那麼你很幸運。否則,它可能不可能在一個單一的步驟。 – Kobi
我希望能夠在不使用.Net的情況下解決它,但是,最終我使用了.Net。另外,我已經看過Captures集合,但是我沒有將捕獲與集團關聯的可靠方法(或者我忽略了什麼?)。 – Mrchief
查看已發佈的答案。有'Match.Captures'這個比較容易找到但不是很有用的,你通常需要'Group.Captures'(當然我在這裏猜測)。 – Kobi