强调camelCase RegEx

时间:2012-03-28 16:49:26

标签: regex replace dreamweaver camelcasing

我们的标准已经发生了变化,我想在Dreamweaver中进行“查找和替换”(它允许使用RegEx,或者我们只允许Visual Studio 2010,如果它允许通过RegEx进行搜索)所有下划线和camelCase它们。

RegEx会做什么?

RegEx让我感到困惑。我当然需要做一些学习。

提前致谢!

更新:更多信息 - 我在我的html,aspx,cfm或css文档中搜索包含下划线的任何字符串,并将其替换为以下字母大写。

4 个答案:

答案 0 :(得分:2)

我遇到了这个问题,但我还需要处理像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

答案 1 :(得分:0)

我认为有一个很好的方法可以完全用正则表达式做到这一点。搜索_字符很简单,比如._。我应该努力找到一个带有任何东西的_,但你需要一个更强大的脚本系统来改变_后面的字符的大小写。我建议perl:)

答案 2 :(得分:0)

我有一个PHP解决方案

preg_replace("/(_)(.)/e", "strtoupper('\\2')", $str)

可能有一个更优雅的选择标准,但我想保持简单。

答案 3 :(得分:0)

我最近不得不接近你问过的类似情况。这是我在VIM中使用的正则表达式,它为我完成了这项工作:

%s/_\([a-zA-Z]\)/\u\1/g

举个例子:

this_is_a_test变为thisIsATest