3
我正在嘗試使用Notepad ++宏進行一些文本操作。我最後一步是將camelCase字符串轉換爲SNAKE_CASE。到目前爲止沒有運氣。我對正則表達式不是很熟悉,所以不能編寫我自己的解決方案。從camelCase到SNAKE_CASE的所有文本
實施例的文本文件輸入:
firstLine(874),
secondLine(15),
thirdLineOfText87(0x0001);
希望的輸出:
FIRST_LINE(874),
SECOND_LINE(15),
THIRD_LINE_OF_TEXT_87(0x0001);
正則表達式或任何插件是可接受的答案。
應該如何'找到what'樣子,如果camelCases開始上字母,例如:FIRSTLINE(874)? – Dancia
第一種方法錯過了除最後一個之外的所有'_',第二種方法從'ThirdLineOfText87(0x0001);' - >'THIRD_LINEOF_TEXT_87(0x0001);'錯過了第二個_ – Dancia
您可以使用['(\ G(?!^) | \ b [a-zA-Z] [az] *)([AZ] [az] * | \ d +)'](https://regex101.com/r/uj9mGm/1),訣竅是把'\ G'分支作爲交替組中的第一個選項,並在該單詞的開頭添加對大寫字母的支持。 –