И снова я мучаюсь с RegExp'сами

...
Имеется строка:
Код:

$sList = "First|[:Class:]|[String]"
Нужно на выходе получить это:
Код:

First|[:Class:]|S|t|r|i|n|g
Т.е расчлинить (разделить через |) любую строку попадающую под квадратные скобки, но без знака двоеточия в начале и в конце.
Пробовал так:
Код:

$sRet = StringRegExpReplace($sList, "(.*)\[([^:].*[^:])\].*", "\1\2|")
ConsoleWrite($sRet & @CRLF)
Но заменяется только вся строка целиком, а нужно каждый символ разделить...