Для вашего случая использования, регулярное выражение класс символов ( MSDN ) является хорошим выбором:
string[] words = Regex.Split(str, "[.-]");
Примечание. Поскольку -
также используется для определения диапазона символов, например a-z
, рекомендуется ставить -
в конце группы символов. В противном случае, просто избежать этого, например, \-
.
Это наиболее уместно, если вы ожидали, что вам понадобятся дополнительные разделители и другие требования, вы найдете регулярное выражение более читабельным и производительность не будет проблемой (Regex.Split намного медленнее, чем эквивалент String.Split).