Hey I have to change in a lot of places camelCase to snail_case.
I have following example:
billingAddress
paymentDetails
I tried to use find and replace with regex in PhpStorm
In 'find' input field I put in:
([A-Z])
In 'replace' input field I put in:
_\L$1
Result I got:
billing_LAddress
payment_LDetails
What do I need to change in order to get following result:
billing_address
payment_details
First open Find and Replace functionality with CTRL
+ R
and then check the boxes Match Case
and Regex
(and if necessary In Selection
):
1. To replace camelCase to snail_case as in in the question:
find: ([A-Z])
replace: _\l$1
someThing -> some_thing
2. To replace UPPERCASE words to lowercase words use \L
find: (\w*)
replace: \L$1
SOMETHING -> something
3. To replace lowercase words to UPPERCASE words use \U
find: (\w*)
replace: \U$1
something -> SOMETHING
4. To replace first character of words with lowercase use \l
find: (\w*)
replace: \l$1
Something -> something
5. To replace first character of words with UPPERCASE use \u
find: (\w*)
replace: \u$1
something -> Something
You get best results by adding some additional boundaries that suit your specific case, for example single '
or double quotes "
or line breaks \n
Check for details on additional Regular Expression Syntax the documentation for PHPStorm or WebStorm.