Regex 使用正则表达式将字符转换为大写(EditPad Pro)
我编写了一个正则表达式,希望能够将每个匹配项(仅一个字符)替换为大写字符。我正在使用EditPad Pro(但是我愿意使用任何其他允许我这样做的工具,只要它是免费的,因为我只需要做一次) 背景:我有一个非常长的文本文件,由区分大小写的应用程序使用,有些单词以小写字母开头,而不是大写字母,从而导致应用程序崩溃。这将需要很长时间手工完成,如果没有正则表达式,这将非常复杂,因为(邪恶的)小写字符的出现非常具体 我已经编写了select正则表达式,现在我可以将它与backreference一起使用($1很好),但是我不能用大写字符替换它。我原以为\u$1之类的东西可以用,但在EditPad Pro中不行 如果没有免费的工具允许我这么做,我想另一种选择是用C语言来做,但是我有点匆忙,而且没有编译器,所以我必须先下载速成版,所以。。。最好找到一个支持这种特性的工具Regex 使用正则表达式将字符转换为大写(EditPad Pro),regex,Regex,我编写了一个正则表达式,希望能够将每个匹配项(仅一个字符)替换为大写字符。我正在使用EditPad Pro(但是我愿意使用任何其他允许我这样做的工具,只要它是免费的,因为我只需要做一次) 背景:我有一个非常长的文本文件,由区分大小写的应用程序使用,有些单词以小写字母开头,而不是大写字母,从而导致应用程序崩溃。这将需要很长时间手工完成,如果没有正则表达式,这将非常复杂,因为(邪恶的)小写字符的出现非常具体 我已经编写了select正则表达式,现在我可以将它与backreference一起使用($1
谢谢大家! TextPad将允许您执行此操作 例如:
test this sentence
查找内容:\([^]*\)\(.*\)
替换为:\U\1\E\2
\U
将导致以下所有字符处于高位
\E
将关闭\U
结果将是:
TEST this sentence
EditPad Pro和PowerGREP有一个
独特的功能,允许您
更改反向引用的大小写。
\U1
插入第一个反向引用
大写,\L1
小写和小写
\F1
中的第一个字符
中的大写字母和余数
小写字母。最后,\I1
插入它
每个单词的第一个字母
大写,以及中的其他字母
小写
资料来源:Goyvaerts,2006年1月。正则表达式:完整教程。露露网。ISBN 1411677609。谷歌图书。2010年6月25日检索。您可以在jEdit中使用“查找和替换”对话框中的“BeanShell代码段的返回值”选项来执行此操作。只需搜索
“[a-z]”
并将其替换为“\u 0.toUpperCase()”
(不带引号)您也可以使用\I1
和\I2
等来大写匹配的第一个字母,而不是$1
和$2
我知道这个线程是关于EditPad Pro的,但我来这里是因为我对javascript regexp也有同样的需求
对于需要相同技巧的人,可以使用函数或lambda作为替换参数
我使用下面的函数将带有-
的css名称转换为javascript等效名称,例如,“border top”
将转换为“borderTop”
:
s=s.replace(/\-[a-z]/g,x=>x[1].toUpperCase());
只是一个记事本+的另一个Usage示例(正则表达式搜索模式)
示例:
get_user -> GetUser
create_user -> CreateUser
update_user -> UpdateUser
delete_user -> DeleteUser
在.NET正则表达式中是否有执行此操作的方法(不使用
ToUpper
)?也适用于记事本+。\U$1\E
在Sublime文本中在记事本++中查找应该是(.*)
,替换应该是\U$1
也适用于PHPStorm。但我有相反的要求。我必须将所有的大写属性值(可能是90年代的HTML)替换为小写。使用\L$1\E
有效。您的回答与最初的问题并不相关,但我是在谷歌搜索时发现的,这正是我要找的。太棒了,谢谢!这个问题更适合超级用户吗?
get_user -> GetUser
create_user -> CreateUser
update_user -> UpdateUser
delete_user -> DeleteUser