preg_replace В php 5.5

1. Andrei14 (23.07.2015 / 11:17)
Здраствуйте, мой старый ноут сломался, я купил новый, скачал опен сервер, решил проверить свой скрипт, и появилась ошибка из за функции ereg, как я понял потому что в этом опен сервере установлен php 5.5, переделал под функцию preg_replace, вот пример,
$text = preg_replace("![left\](.*)[/left\]!si", "<left>\\1</left>", $text);
Но вылазит ошибка:
Warning: preg_replace(): Compilation failed: missing terminating ] for character class at offset 19 in W:\domains\Newk1\header\scripts.php on line 308
Что я делаю не так? Помогите кто чем сможет,

2. Александр (23.07.2015 / 11:20)
!\[left\](.*)\[left\]!si", "<left>\\1</left>

3. Andrei14 (23.07.2015 / 12:55)
2. Муз-ТВ, спасибо, одну проверил, вроде работает, сейчас все остальное попробую,

URL: https://visavi.net/topics/42501