сейчас делаю так, но хочу избавиться от второй строки (где обрязаються первый и последний символ), собственно надо, что-бы выражение "(\-{1})" работало только как ключ поиска и в результат не включалось
RegExp.Pattern = "(\-{1})([0-9]+)(\;{1})"; // число между знаком "-" и ";"
Matches=RegExp.Execute(ТекСтрока);
Если Matches.Count() > 0 Тогда
_НомерПакета = Строка(Matches.Item(0).Value);
_НомерПакета = Сред(_НомерПакета, 2, СтрДлина(_НомерПакета)-2);
КонецЕсли;
RegExp.Pattern = "\-{1}([0-9]+)\;{1}"; // число между знаком "-" и ";"
Если RegExp.Test(ТекСтрока) = -1 Тогда
_НомерПакета=RegExp.Replace(ТекСтрока,"$1");
КонецЕсли;