我正在尝试实现一个Regex
以便能够匹配如下内容:
char buffer[10];
- 缓冲区可以用任何可能的变量名称替换
- 10 可以替换为任何整数。
我已经尝试了以下方法,但没有工作:
-
@"char(?:[a-z][a-z]+)[d+];"
-
@"char(?:[a-z][a-z]+)\[\d+\];"
-
@"char (?:[a-z][a-z]+)[d+];"
-
@"char \w)[d+];"
请指教,或者指出我做错了什么。
谢谢
试试这个:
char (?=w+[)[^[]+[d+];
或者简单地:
char w+[d+];
char (?<varname>w+)[(?<size>d+)]
它为您提供了两个组,因此您可以随心所欲地使用它。
试试这个:
^char (?i)(?<varName>[a-z_][a-z_d]+)[(?<size>0|([0-9]d+))];$
它与包含有效变量名和非负整数的字符串匹配。