繁体   English   中英

正则表达式在 PhpStorm/Webstorm (Intellij-IDEA) 中用小写字母替换大写

[英]Regex replace uppercase with lowercase letters in PhpStorm/Webstorm (Intellij-IDEA)

嘿,我必须在很多地方将camelCase 更改为snail_case。

我有以下示例:

billingAddress
paymentDetails

我尝试在 PhpStorm 中使用查找和替换正则表达式

在“查找”输入字段中,我输入:

([A-Z])

在“替换”输入字段中,我输入:

_\L$1

结果我得到:

billing_LAddress
payment_LDetails

我需要更改什么才能获得以下结果:

billing_address
payment_details

首先使用CTRL + R打开查找和替换功能,然后选中Match CaseRegex框(如有必要, In Selection ):

在此处输入图片说明


1.camelCase替换为snail_case,如问题中所述:

找到: ([AZ])
替换: _\\l$1

someThing -> some_thing


2.要将大写单词替换为小写单词,请使用\\L

查找: (\\w*)
替换: \\L$1

SOMETHING -> something


3.要将小写单词替换为大写单词,请使用\\U

查找: (\\w*)
替换: \\U$1

something -> SOMETHING


4.小写替换单词的第一个字符,使用\\l

查找: (\\w*)
替换: \\l$1

Something -> something


5.大写替换单词的第一个字符,使用\\u\u003c/code>

查找: (\\w*)
替换: \\u$1\u003c/code>

something -> Something


注意:添加一些额外的边界

通过添加一些适合您的特定情况的额外边界,您可以获得最佳结果,例如单'或双引号"或换行符\\n


正则表达式文档

查看PHPStormWebStorm文档中有关其他正则表达式语法的详细信息。

根据PHPstorm 文档和我的测试,这现在有效:

_\l$1

我需要更改什么才能获得以下结果:

没有/一切。 它根本不支持 ATM。

https://youtrack.jetbrains.com/issue/IDEA-70451——观看这张票(明星/投票/评论)以获取进度通知。


更新:从 PhpStorm v10 开始,此功能现已实现并可用。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM