5

我正在使用 NetBeans,我想知道使用什么正则表达式在每个常量周围添加单引号/双引号。每个常量的定义如下:

define(SYSTEM_BASEDIR, '/base/dir');

Afaik,这不是正确的方法。我需要将所有常量转换为:

define('SYSTEM_BASEDIR', '/base/dir');

在此先感谢所有帮助者!

4

6 回答 6

9

您是正确的,这define(SYSTEM_BASEDIR, '/base/dir');是无效的语法,因为您在定义它之前使用了常量。

现在对于正则表达式:

打开替换对话框(Ctrl+ H

找什么:define\((\w*),

用。。。来代替:define("$1",

这将变成这样:

define(BLA,"test");

进入:

define("BLA","test");
于 2013-02-07T09:18:45.223 回答
4

网豆Ctrl+H

find: (define\()(\w*)(\,)
replace: define("$2",

检查正则表达式

于 2015-01-23T09:44:13.757 回答
2

网豆Ctrl+H

find: define\(([A-Za-z_]+),
replace: define('$1',

检查正则表达式

于 2013-02-07T09:18:02.567 回答
2
$result = preg_replace('/\bdefine\((\w+),/', 'define(\'\1\',', $subject);

更改所有实例

define(<alphanumeric word>,

进入

define('<alphanumeric word>',
于 2013-02-07T09:15:20.293 回答
1

从您的编辑器中找到替换文本

在那里使用这个 reg 表达式:

find : define\((.*),

replace : define('\$1',

如果您使用的是记事本++

replace : define('\1', 
于 2013-02-07T09:20:11.770 回答
0

使用此正则表达式替换

(?<constant>(?:[A-Z]+(_[A-Z]+)*))
于 2013-02-07T09:26:04.307 回答