字符串解析:提高預浸料/ PCRE /正則表達式來找到PHP變量
$str = "
public $xxxx123;
private $_priv ;
$xxx = 'test';
private $arr_123 = array();
"; // | |
// ^^^^^^^---- get the variable name
我有什麼至今:
$str = preg_match_all('/\$\S+(;|[[:space:]])/', $str, $matches);
foreach ($matches[0] as $match) {
$match = str_replace('$', '', $match);
$match = str_replace(';', '', $match);
}
它的工作原理,但我想,如果我能知道改進preg,例如干掉兩個str_replace
的,也許包括\t
在(;|[[:space:]])
有效的PHP var名稱的正則表達式,這也會匹配其他隨機字符串像$(「=§/&=」§/ $),它也不會正確地匹配像$ x = 123; –
這樣的東西,例如在這裏「!」§$%&/()=?'「 - > $%&/() –
好了現在我們接近一些很好的解決方案:D –