Следующее регулярное выражение возвращает C:\
в первой группе захвата, а остальные во второй:
^(\w:\\)(.*)$
Это выглядит так: полная строка (^…$
) начинается с буквы (\w
, хотя [a-z]
, вероятно, будет более точной для букв диска Windows), за которой следует :\
. Все остальное (.*
) захвачено во второй группе.
Обратите внимание, что это не будет работать с путями UNC. Если вы работаете с путями, лучше всего не использовать строки и регулярные выражения, а использовать API из System.IO
. Найденные там классы уже предлагают ту функциональность, которая вам нужна.