Regex 使用正则表达式将字符转换为大写(EditPad Pro)

Regex 使用正则表达式将字符转换为大写(EditPad Pro),regex,Regex,我编写了一个正则表达式,希望能够将每个匹配项(仅一个字符)替换为大写字符。我正在使用EditPad Pro(但是我愿意使用任何其他允许我这样做的工具,只要它是免费的,因为我只需要做一次) 背景:我有一个非常长的文本文件,由区分大小写的应用程序使用,有些单词以小写字母开头,而不是大写字母,从而导致应用程序崩溃。这将需要很长时间手工完成,如果没有正则表达式,这将非常复杂,因为(邪恶的)小写字符的出现非常具体 我已经编写了select正则表达式,现在我可以将它与backreference一起使用($1

我编写了一个正则表达式,希望能够将每个匹配项(仅一个字符)替换为大写字符。我正在使用EditPad Pro(但是我愿意使用任何其他允许我这样做的工具,只要它是免费的,因为我只需要做一次)

背景:我有一个非常长的文本文件,由区分大小写的应用程序使用,有些单词以小写字母开头,而不是大写字母,从而导致应用程序崩溃。这将需要很长时间手工完成,如果没有正则表达式,这将非常复杂,因为(邪恶的)小写字符的出现非常具体

我已经编写了select正则表达式,现在我可以将它与backreference一起使用($1很好),但是我不能用大写字符替换它。我原以为\u$1之类的东西可以用,但在EditPad Pro中不行

如果没有免费的工具允许我这么做,我想另一种选择是用C语言来做,但是我有点匆忙,而且没有编译器,所以我必须先下载速成版,所以。。。最好找到一个支持这种特性的工具


谢谢大家!

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