抱歉,这个名字很糟糕的主题。 我正在寻找一个有效的正则表达式来匹配以下内容:
[2014-11-13 13:05:04] [path/to/class.instagram.php] Options: array (
'client_id' => '',
'client_secret' => '',
'object' => 'tag',
'object_id' => 'rwar',
'aspect' => 'media',
'callback_url' => 'http://www.localthisday.nl/instagram.callback.php',
)
我希望它分开,所以它看起来像这样:
1. [2014-11-13 13:05:04]
2.[path/to/class.instagram.php]
3. Options: array (
'client_id' => '',
'client_secret' => '',
'object' => 'tag',
'object_id' => 'rwar',
'aspect' => 'media',
'callback_url' => 'http://www.localthisday.nl/instagram.callback.php',
)
我现在正在使用这个:
(\[(.*)\])(\s{1})(\[(.*)\])(\s{1})(.*)/gmi
我知道,这不是一个非常好的,这可能就是为什么它没有像我希望的那样工作。 问题是;它是一个多行字符串,由于某种原因它不能用于多行。 有人可以帮帮我吗? 不幸的是,我在正则表达式中表现不佳。
答案 0 :(得分:1)
答案 1 :(得分:0)
使用非贪心量词:
(\[.*?\])\s(\[.*?\])\s(.*)/gmi
答案 2 :(得分:0)
(\]|\))
试试这个。$1\n
。见。演示。
http://regex101.com/r/pQ9bV3/32
var re = /(\]|\))/gm;
var str = '[2014-11-13 13:05:04] [path/to/class.instagram.php] Options: array (\n \'client_id\' => \'\',\n \'client_secret\' => \'\',\n \'object\' => \'tag\',\n \'object_id\' => \'rwar\',\n \'aspect\' => \'media\',\n \'callback_url\' => \'http://www.localthisday.nl/instagram.callback.php\',\n)';
var subst = '$1\n';
var result = str.replace(re, subst);