当前位置:  开发笔记 > 编程语言 > 正文

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

如何解决《使用正则表达式将char转换为大写(EditPadPro)》经验,为你挑选了5个好方法。

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

背景:我有一个案例敏感应用程序使用的非常长的文本文件,有些单词以小写字母而不是大写字母开头,从而导致应用程序崩溃.这需要很长时间才能完成,并且没有正则表达式会很复杂,因为(邪恶的)小写字母char的出现非常具体.

我已经写了选择正则表达式,现在我可以使用它与反向引用($ 1工作得很好)但是我不能用大写字母替换它.我认为\ u $ 1会起作用,但是在EditPad Pro中却没有.

如果没有免费工具允许我这样做,我想替代方法就是在C#中做它但是我有点急,而不是靠近编译器,所以我必须先下载快递版,所以...最好找一个支持这种功能的工具!

谢谢!



1> akf..:

TextPad将允许您执行此操作.

例:

test this sentence

找到:\([^ ]*\) \(.*\) 替换为:\U\1\E \2

\U将导致所有后续字符为高位

\E将关闭\U

结果将是:

TEST this sentence


也适用于记事本++.
_Sublime Text_中的`\ U $ 1\E`
有什么方法可以在Atom中工作吗?
`\ U $ 1\E`适用于版本15的IntelliJ IDEA.
有没有办法在.NET Regex中执行此操作(不使用`ToUpper`)?
_Vim_中的`\ U\1\E`
也适用于PHPStorm.我有相反的要求.我不得不将所有大写属性值(从可能的'90s HTML)替换为小写.使用`\ L $ 1\E`工作.
在Notepad ++中,find应为`(.*)`,replace应为`\ U $ 1`

2> Sergio Abreu..:

我知道这个帖子是关于EditPad Pro的.但是我来到这里是因为javascript regexp同样需要.

对于需要相同提示的人来说,对于javascript regexp,您可以使用函数作为替换参数.

我使用函数bellow将css名称转换为 - 等效于javascript,例如:"border-top"将转换为"borderTop";

s = s.replace(/\-[a-z]/g, function(x){return x[1].toUpperCase();});


这可能值得自己提问.(我们鼓励您回答自己的问题.)

3> 小智..:

EditPad Pro和PowerGREP具有独特的功能,允许您更改反向引用的大小写. \U1以大写形式插入第一个反向引用,\L1小写 \F1,第一个字符为大写,余数为小写.最后,\I1插入每个单词的首字母大写,其他字母小写.

资料来源:Goyvaerts,Jan(2006年).正则表达式:完整教程.Lulu.com.页.35.ISBN 1411677609.谷歌图书.检索于2010年6月25日.



4> 小智..:

你可以在jEdit中使用jEdit的find and replace对话框中的"BeanShell片段的返回值"选项来完成此操作.只需搜索" [a-z]"并替换它" _0.toUpperCase()"(不含引号)



5> Echilon..:

您也可以使用\I1\I2等(而不是$1和)将匹配的首字母大写$2

推荐阅读
携手相约幸福
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有