我想替换所有字符串,而不使用双引号进行单引号
的字符串插值例如:
<?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执行此操作而无需逐个单击
我尝试过的是:
find: "([^"'$\\]+)"
replace: '\$1'
但它仍然取代了$x
示例
答案 0 :(得分:1)
可能在Notepad ++(以及使用Perl或PCRE的任何其他编辑器)中
我注意到你是在文本编辑器中这样做的。在大多数编辑中,这将非常困难。在使用PCRE
引擎的编辑器中,我们可以这样做:
搜索: '[^']*'(*SKIP)(*F)|"((?:(?!\$\w)[^"'])*)"
替换: '$1'
在online demo中,查看底部窗格中的替换。