正则表达式解析C枚举

前端之家收集整理的这篇文章主要介绍了正则表达式解析C枚举前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
如何构造正则表达式来解析C枚举?
我试过的枚举看起来像

enum Temperature
{
    C = 0,F=1,// some elements are commented
    R,// most elements are not gived a value
    K        // sometimes the last element is succeeded by a comma
} temperature;

// different indent style is used
enum Depth {
    m = 0,ft = 1,} depth;

我尝试了几个简单的模式,但没有一个足以捕捉上述所有情况.

任何可以帮助我的regexp向导?

编辑:澄清,我想要名称和价值,例如C和0.

解决方法

这很有挑战性:)下面是我能想到的最好的.假设只给出{和}之间的文本,它会捕获所有名称和相应的值:

/(\w+)\s*(?:=\s*(\d+)|)\s*,?\s*(?:(?:\n|$)|\/\/.*?(?:\n|$)|)/

猜你在找的正则表达式相关文章