我希望对我的所有源代码文件进行检查,并将每个出现的 k_Xyyy
替换为 k_xyyy
(将 k_
后的第一个字母从大写改为小写)。
我正在使用 Eclipse 对话框来搜索和替换多个文件。目前,我已经有了正则表达式 \bk_([A-Z])
。
我如何指定该正则表达式的替换字符串?
我刚刚解决了同样的任务(需要将.NET接口转换为Java接口),利用了VIM的强大功能:)
void DoMethod1 -> void doMethod1
Foo PerformMethod2 -> Foo performMethod2
:%s/\(^\s*\w\+\s\+\)\([A-Z]\)/\1\L\2/g
这里我们正在搜索(可选缩进后跟返回类型,后跟空格),然后跟大写字母。花括号是捕获组。然后我们首先使用第一个捕获组\1,然后将第二个捕获组\2转换为小写。
当然,这需要您在Vim中打开文件,但无论如何,这比在Eclipse中手动执行相同的操作要快得多。
这是不可能的。要么使用Eclipse的重构功能,要么逐个替换它们:
regex : \bk_A
replacement : k_a
regex : \bk_B
replacement : k_b
...
regex : \bk_Z
replacement : k_z
我需要为一大块源代码执行字符串小写转换操作。我使用了Notepad++和Python Script插件,方法参见这里。
\L$1\E
来将第一个匹配组转换为小写字母。同样的方法也适用于\U...\E 来转换为大写字母。 - fuemf5对于我来说,由于我刚开始学习编程,这更有趣。
取$pattern_to_change
并使用ord()
将其从ASCII转换为十进制。取得的十进制数加上32。然后使用chr()
将$desired_pattern
转换回ASCII。
或者只需下载SublimeText
并使用其查找和替换功能查找所有出现的内容,并用不同的文本替换它们(Sublime也具有正则表达式)。
我确定你可以手动将十亿进行转换,因为这篇文章已经有5年了,但是你可以在5分钟内使用Sublime完成此操作。
真正有用的文本编辑器。