我们的标准已经改变了,我想在Dreamweaver中做一个“查找和替换”(它允许RegEx或我们刚刚获得Visual Studio 2010,如果它允许通过RegEx进行搜索)所有下划线和camelCase它们。
RegEx会做什么?
RegEx让我感到困惑。我当然需要做一些学习。
提前致谢!
更新:更多信息 - 我在我的html,aspx,cfm或css文档中搜索包含下划线的任何字符串,并将其替换为以下字母大写。
我遇到了这个问题,但我还需要处理像gap_in_cover_period_d_last_5_yr这样的字段到gapInCoverPeriodDLast,并找到10个其他sed表达式中的9个,不喜欢1个字母的单词或数字。
所以要回答这个问题,请使用sed。 sed -s相当于在vim中使用:s命令。所以下面的例子是一个命令(即sed -s /.../ gc
这似乎有效,虽然我必须运行它两次(word_a_word将在第一次传递时变为wordA_word,而第二次传递wordAWord.sed向后命令,对于我的麻瓜血来说太神奇了): -
s/\([A-Za-z0-9]\+\)_\([0-9a-z]\)/\1\U\2/gc
我不认为有一个很好的方法来纯粹使用正则表达式。搜索_字符很简单,比如._。我应该努力找到一个带有任何东西的_,但你需要一个更强大的脚本系统来改变_后面的字符的大小写。我建议perl :)
我有一个PHP解决方案
preg_replace("/(_)(.)/e", "strtoupper('\\2')", $str)
可能有一个更优雅的选择标准,但我想保持简单。
我最近不得不接近你问过的类似情况。这是我在VIM中使用的正则表达式,它为我完成了这项工作:
%s/_\([a-zA-Z]\)/\u\1/g
举个例子:
this_is_a_test
成为thisIsATest