正则表达式用较低的大写替换大写并放置下划线

时间:2014-09-19 15:23:35

标签: regex sublimetext2 sublimetext3

我使用Sublime Text,我想更改这种字符串:

ShouldHavePageRequestAndSpecificationsNot

到:

should_have_page_request_and_specifications_not

我只是发现了这个:

找到:

(([a-z][A-Z]+)|([A-Z]+[a-z]))

替换为:

\L$1

只有大写字母会降低,我试图插入" _"但未通过所有测试..

2 个答案:

答案 0 :(得分:3)

对这些使用'区分大小写'和'正则表达式':(为我工作)

找到:

([a-zA-Z][a-z]*)([A-Z])

替换为:

\L\1_\L\2

(使用“全部替换”)

答案 1 :(得分:2)

查看Case Conversion插件。它为 Edit -> Convert Case 菜单添加了许多选项,包括PascalCase和snake_case,这是您在此处寻找的内容。只需选择要转换的内容,转到菜单,然后选择要转换的内容。每个转换都附有键盘快捷键,应在菜单中列出。