Func _StringUnique(ByRef $sString, $spr = @CRLF)
Local $Count = 0
If $spr<>'[' Then
$sString = StringReplace($sString, '[', Chr(1)) ; Символ "[" создаёт проблему, поэтому временно подменяем его непечатным символом
$Count = @extended
EndIf
Local $a = StringSplit($sString, $spr, 1), $i
Assign('/', '', 1) ; создаёт переменную, чтобы пустые строки уже являлись дубликатами и исключались из результата
$sString = ''
For $i = 1 To $a[0]
If Not IsDeclared($a[$i] & '/') Then
$sString &= $a[$i] & $spr
Assign($a[$i] & '/', '', 1)
EndIf
Next
$sString = StringTrimRight($sString, StringLen($spr))
If $Count Then $sString = StringReplace($sString, Chr(1), '[')
EndFunc ;==>_StringUnique