我想转换PascalCase属性名称,例如Is24Hour,Is512以JSON风格的小写用下划线(即is_24_hour,is_512使用C#).
到目前为止,我已经走远了,但它不适用于多个数字.
([A-Z])([A-Z0-9][a-z])|([a-z0-9])([A-Z0-9])
Run Code Online (Sandbox Code Playgroud)
用替换表达式($1$3_$2$4)
例如"Is24Hour"变成"Is_24_Hour"(然后是低位的.ToLower()).但"Is512"变成了"Is_51_2".