簡體   English   中英

如何在C#中刪除字符串中的斜杠

[英]How to remove slash from string in C#

我有一個這樣的字符串:“/ AuditReport”它被分配給變量rep。 如果我輸入

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

它返回“/ uditReport”而不是所需的“AuditReport”,即它不會刪除斜杠。 我怎么能刪除它?

.NET中的字符串索引從零開始。 Remove的文檔說明第一個參數是“從零開始刪除字符的位置”

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

或者,在我看來,使用Substring更具可讀性:

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

或者,您可以使用TrimStart ,具體取決於您的要求。 (但請注意,如果您的字符串以多個連續斜杠開頭,那么TrimStart將刪除所有字符串。)

string r = rep.SysName.TrimStart('/');

嘗試:

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

你需要:

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

第一個參數是開始,第二個參數是要刪除的字符數。 (1,1)將刪除第二個字符,而不是第一個字符。

索引從0開始,因此您要刪除第二個字符。 相反,試試吧

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

如果你正在處理一個Uri ,你可以這樣做:

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

它將返回例如api/report而不是/api/report

什么是關於"/AuditReport".Replace("/","")

.NET中的字符串索引基於零,因此:

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

您還可以使用:

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

你必須寫var r = rep.SysName.Remove(0, 1); 我猜你有一個VisualBasic背景(像我:-)),C#中的數組,字符串等以索引0而不是1開頭,就像在其他一些語言中一樣。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM