正则expression式用大写字母replace大写字母
我试图用正则expression式replace大写字母和相应的小写字母。 以便
EarTH: 1, MerCury: 0.2408467, venuS: 0.61519726,
变
earth: 1, mercury: 0.2408467, venus: 0.61519726,
在崇高的文本。 我怎样才能在包含大写字母和小写字母的单词中使用小写字母? 所以它影响venUs
而不是VENUS
。
你可以:
find: (\w)
replace为: \L$1
或者select文本,按Ctrl + K + L。
我想这对其他人也可能会派上用场:
找:
-
([AZ])(.*)
更换:
-
\L$1$2
– >会将$1
和$2
转换为小写
但 -
\l$1$2
– >只会将$1
转换$1
小写,并保留原来的$2
\U
和\u
大写字母也是一样的
在用[AZ]
类的正则expression式search之前,你应该按下区分大小写的button (或Alt + C )( 好的build议在接受的答案中编辑)。 只是要清楚,我要留下一些其他的例子:
- 大写词汇
- find:
(\s)([az])
(\s
也匹配新行,即“venuS”=>“VenuS”) - replace:
$1\u$2
- find:
- 没有资本的话
- 查找:
(\s)([AZ])
- replace:
$1\l$2
- 查找:
- 删除骆驼案例 (例如cAmelCAse => camelcAse => camelcase)
- 查找:
([az])([AZ])
- replace:
$1\l$2
- 查找:
- 小写字母 (例如LowerCASe =>小写字母 )
- 查找:
(\w)([AZ]+)
- replace:
$1\L$2
- 交替replace:
\L$0
- 查找:
- 单词中的大写字母 (例如upperCASe => uPPERCASE)
- 查找:
(\w)([AZ]+)
- replace:
$1\U$2
- 查找:
- 大写以前 (例如upperCase => UPPERCase)
- 查找:
(\w+)([AZ])
- replace:
\U$1$2
- 查找:
- 前面的小写 (例如LOWERCase => lowerCase)
- 查找:
(\w+)([AZ])
- replace:
\L$1$2
- 查找:
- 大写其余 (例如upperCase => upperCASE)
- 查找:
([AZ])(\w+)
- replace:
$1\U$2
- 查找:
- 其余的小写 (例如lOWERCASE => 100wase)
- 查找:
([AZ])(\w+)
- replace:
$1\L$2
- 查找:
- 按右移大写 (例如:Case => cAse => caSe => casE)
- 查找:
([az\s])([AZ])(\w)
- replace:
$1\l$2\u$3
- 查找:
- 左移大写 (例如,CasE => CaSe => CAse => Case)
- 查找:
(\w)([AZ])([az\s])
- replace:
\u$1\l$2$3
- 查找:
关于这个问题( 至less匹配一个大写字母和一个小写字母的单词,并使它们成为小写字母), leemour的评论答案是正确的答案 。 只是为了澄清,如果只有一个组要replace,你可以在内部组(即非捕获组 )中使用?:
或者避免创build它们:
- 查找:
((?:[az][AZ]+)|(?:[AZ]+[az]))
OR([az][AZ]+|[AZ]+[az])
- replace:
\L$1
2016-06-23编辑
泰勒build议通过编辑这个答案替代查找expression式#4:
-
(\B)([AZ]+)
根据文档 , \B
将寻找一个不在单词边界的字符(即不在开始而不在结尾)。 您可以使用“ 全部replace”button,它和查找expression式(\w)([AZ]+)
完全相同。
然而, \B
的缺点是它不允许单个replace,可能是由于find了 “非边界”的限制(如果知道确切的原因,请做编辑)。
尝试这个
- find:
([AZ])([AZ]+)\b
- replace:
$1\L$2
确保区分大小写(Alt + C)