单个正则表达式的非固定数量的替换?

时间:2013-10-03 07:40:56

标签: regex

我正在尝试创建一个正则表达式,以便将c函数与任意数量的参数进行匹配,并对每个参数进行替换。有可能吗?

一个例子:

我希望正则表达式匹配

void functionName(int a);

并将其转换为type:int,paranName:a

我希望正则表达式也匹配:

void functionName(int a, int b)

并将其转换为type:int,paramName:a,type:int,paramName:b

我知道怎么做替换等等......但是不知道有可能以非固定的方式进行替换。

1 个答案:

答案 0 :(得分:0)

使用不区分大小写和。与换行符不匹配:

查找:(?:[a-z]+(?: [a-z]+)+\()?([a-z]+) ([a-z]+)(?:\);?)?

替换:Type: \1, paramName: \2

我使用的是Notepad ++,但我认为它也适用于C#。