如何使用正则表达式向类(或任何字符串)中添加属性?
我希望有类似的东西:
<?php
class Foo extends Sth
{
protected $bar;
}
成:
<?php
class Foo extends Sth
{
protected $newProperty;
protected $bar;
}
模式的切入点应为关键字class
和第一个{
。
这样做的最佳方式是什么?也许有比正则表达更好的方法?受影响的课程当然要复杂得多,所以我不认为这里有反思。
答案 0 :(得分:1)
我不知道其他类有多复杂,但正则表达式适用于你拥有的样本:
/class[^\r\n]+\R\{(\s*)(?=.*?\})/s
替换为:
$0protected $newProperty;$1