谁能告诉我为什么这不起作用:
string txt = "+0°1,0'";
string degree = txt.TrimEnd('°');
我试图分离这个字符串上的度数,但在此之后,度数上剩下的就是txt的相同内容。
我在 Visual Studio 中使用 C#。
谁能告诉我为什么这不起作用:
string txt = "+0°1,0'";
string degree = txt.TrimEnd('°');
我试图分离这个字符串上的度数,但在此之后,度数上剩下的就是txt的相同内容。
我在 Visual Studio 中使用 C#。
string.TrimEnd删除末尾的字符。在您的示例中,“°”不在末尾。
例如 :
string txt = "+0°°°°";
string degree = txt.TrimEnd('°');
// degree => "+0"
如果要删除“°”和所有下一个字符,您可以:
string txt = "+0°1,0'";
string degree = txt.Remove(txt.IndexOf('°'));
// degree => "+0"
另一种安全的处理方法是使用String.Split方法。在这种情况下,您不必费心验证角色的存在。
string txt = "+0°1,0'";
var str = txt.Split('°')[0]; // "+0"
string txt = "+01,0'";
var str = txt.Split('°')[0]; // "+01,0'"
您可以使用它使用String.Replace删除字符串中存在的所有“°”符号
string txt = "+0°1,0'°°";
var text = txt.Replace(@"°", ""); // +01,0'
编辑:添加了一种安全的方式来处理 OP 的确切查询。
string txt = "+0°1,0'";
if(txt.IndexOf('°') > 0) // Checking if character '°' exist in the string
{
string withoutdegree = txt.Remove(txt.IndexOf('°'),1);
}