替换所有文件的引号

时间:2014-06-30 03:16:36

标签: regex intellij-idea

我想替换所有字符串,而不使用双引号进行单引号

的字符串插值

例如:

<?php
require_once $__CFG_dir_lib . "systemconfiguration.php";
require_once $__CFG_dir_lib . "lib.php";
$bla = "test $a 123";
$x = '<a href="123">test</a>';
$y = "<a href='123'>\ntest</a>";

成:

<?php
require_once $__CFG_dir_lib . 'systemconfiguration.php';
require_once $__CFG_dir_lib . 'lib.php';
$bla = "test $a 123";
$x = '<a href="123">test</a>';
$y = "<a href='123'>\ntest</a>";

我可以使用IntelliJ执行此操作而无需逐个单击enter image description here

我尝试过的是:

find: "([^"'$\\]+)"
replace: '\$1'

但它仍然取代了$x示例

1 个答案:

答案 0 :(得分:1)

可能在Notepad ++(以及使用Perl或PCRE的任何其他编辑器)中

我注意到你是在文本编辑器中这样做的。在大多数编辑中,这将非常困难。在使用PCRE引擎的编辑器中,我们可以这样做:

搜索: '[^']*'(*SKIP)(*F)|"((?:(?!\$\w)[^"'])*)"

替换: '$1'

online demo中,查看底部窗格中的替换。