Самая большая проблема с вашим решением - не объявление отсутствующего массива, а скорее как
Вы бы проанализировали следующий код:
string dosage = "2/13/5 mg";
Поскольку ваша проблема, безусловно, зависит от домена, она может не возникать, но возможны некоторые вариации из двух цифр, представляющих одно целое.
Следующее решение разбивает строку на прямую косую черту, а затем удаляет все нецифровые символы из подстрок перед их преобразованием в целые числа.
Regex digitsOnly = new Regex(@"[^\d]");
var array = dosage.Split('/')
.Select(num => int.Parse(digitsOnly.Replace(num, string.Empty)))
.ToArray();
Или как это выглядит с симпатичным синтаксом Linq.