对或错:纯正则表达式可以将大写转换为小写?

时间:2013-02-06 15:14:13

标签: regex replace uppercase lowercase

有没有办法使用perl风格的正则表达式来匹配一个字符并用它的大写/小写等价替换它而不依赖于另一种语言(php,javascript,等等)?

修改字符串大小写很方便,可以在VI编辑器 Notepad ++ PHP等中进行,而不是为每个上下文使用不同的方法。

可能不是,呵呵..

3 个答案:

答案 0 :(得分:1)

就像你说的那样,“可能不是。”

正则表达式不是为了修改字符串,而是为了搜索/匹配它们。您将始终需要某种“外部”语言或程序来进行修改或以其他方式处理正则表达式的输出。

答案 1 :(得分:1)

从我的理解来看,答案是假的。

正则表达式定义语法,如何匹配文本。但是如何对匹配的文本进行进一步的操作,这是混凝土实现的工作。像python/java/perl/vim/sed/awk/...中的替换函数一样,某些工具没有提供,例如grep

同样适用于案件变更。

如果你考虑一下,替换的方法/功能在这些语言/工具中是不同的

awk: sub/gsub
sed: s/../../
vim: s/../../
python: re.sub()
java: replaceAll(..) ...
...

如果正则表达式支持它,为什么没有标准函数?

答案 2 :(得分:0)

正则表达式用于匹配,您的工具(Vi,Notepad ++,PHP)正在进行替换。