Как убрать косую черту из строки в C # - PullRequest
4 голосов
/ 25 ноября 2011

У меня есть такая строка: "/ AuditReport" Она назначена переменной rep.Если я набираю

var r = rep.SysName.Remove(1, 1);

, то возвращает "/ uditReport" вместо желаемого "AuditReport", то есть он не удаляет косую черту.Как я мог удалить это?

Ответы [ 8 ]

17 голосов
/ 25 ноября 2011

Строковые индексы в .NET начинаются с нуля.Документация для Remove гласит, что первый аргумент - "Позиция, начинающаяся с нуля, чтобы начать удаление символов" .

string r = rep.SysName.Remove(0, 1);

В качестве альтернативы, используя Substring более читабелен, на мой взгляд:

string r = rep.SysName.Substring(1);

Или вы можете использовать TrimStart, в зависимости от ваших требований.(Однако учтите, что если ваша строка начинается с нескольких последовательных слешей, TrimStart удалит все из них.)

string r = rep.SysName.TrimStart('/');
6 голосов
/ 25 ноября 2011

Попробуйте:

var r = rep.SysName.Remove(0, 1);
4 голосов
/ 25 ноября 2011

Вам необходимо:

var r = rep.SysName.Remove(0, 1);

Первый параметр - это начало, второй - количество символов, которое нужно удалить.(1,1) удалит второй символ, а не первый.

2 голосов
/ 25 ноября 2011

Индекс основан на 0, поэтому вы удаляете второй символ. Вместо этого попробуйте

var r = rep.SysName.Remove(0, 1);
0 голосов
/ 02 мая 2019

Если вы имеете дело с Uri, вы можете сделать это следующим образом:

var route = uri.GetComponents(UriComponents.Path, UriFormat.UriEscaped);

Будет возвращено, например, api/report вместо /api/report.

0 голосов
/ 25 ноября 2011

Вы должны написать var r = rep.SysName.Remove(0, 1);.Я думаю, у вас есть фон VisualBasic (как я :-)), массивы, строки и т. Д. В C # начинаются с индекса 0 вместо 1, как в некоторых других языках.

0 голосов
/ 25 ноября 2011

Строковые индексы в .NET начинаются с нуля, поэтому:

string r = rep.SysName.Remove(0, 1);

Вы также можете использовать:

string r = rep.SysName.Substring(1);
0 голосов
/ 25 ноября 2011

Что такое "/AuditReport".Replace("/","")?

...