Sublime Text 2,更快找到和替换正则表达式的替代方案?

时间:2012-11-16 17:33:39

标签: sublimetext2

$_POST['daily_limit'];
$whatever = $_POST['smoke'];
$_POST['soup'] + $_POST['cake'];

$this->input->post('daily_limit');
$whatever = $this->input->post('smoke');
$this->input->post('soup') + $this->input->post('cake');

在这个示例中,有没有更快的方法从$_POST[]切换到$this->input->post()而不编写正则表达式查找和替换?我不在乎是否需要多个步骤。为此编写正则表达式(查找:\$_POST\[(.*?)\]替换:\$this->input->post\($1\))需要比手动更改它们更长的时间(也许我只是不擅长正则表达式)。有什么想法吗?

2 个答案:

答案 0 :(得分:1)

我在这里做了一个傲慢的假设,你在每对括号中只有一个变量,变量只包含字母数字字符。 ['soup'+'bacon']会像['soup-with-bacon']一样打破这一伎俩。

使用光标,突出显示$_POST[的实例 - 没有别的。

如果您使用的是Windows / Linux,请按 Alt + F3 Cmd + Shift Mac中的G ?)

尝试滚动浏览并查看所选内容是否是您要替换的所有内容。

输入$this->input->post( - 没有别的。

将所有光标移动到第一个引号的右侧。

Ctrl + (这是该过程中唯一的远程wtfh4xxy部分,并且只有当您不习惯用光标按字导航时)才能浏览变量。

按两次将所有光标移动到下一个引号的右侧。

] 替换为

答案 1 :(得分:1)

@nnnn我做了一个版本的变体来删除wtfh4xxy部分。

选择:$_POST

ALT F3

输入:$this->input->post(

CTRL

CTRL X

CTRL

CTRL v

输入:)

Sublime text ftw!