好的,我正在选择文件名并仅保存文件名。我需要做的是从中删除某些文本,但是它会更改,这就是我遇到的问题。
主要是它的名字是zm,我想从名字中删除_zm。
但是其他一些文件具有ak47_fmg_mp,而我想要的只是_之前的第一个文件。
但不确定如何做到这一点。
我曾经尝试用文本替换regex
,但都没有用
string result = nyu_res.filename;
result = result.Replace("_zm", "");
当我选择一个文件时,它将在此示例中保存文件名。可以说我选了 m14_zm
我想做的就是得到m14,就是这样。与其他人一样。只想到达第一个“ _”。我尝试了上面的代码,但无法正常工作。
任何帮助将不胜感激。
答案 0 :(得分:2)
使用Split('_')并获取第一个。 然后,您不必检查它是否包含_。
result = result.Split('_')[0];
答案 1 :(得分:1)
检查您的字符串是否为Null / Empty和'_',然后可以使用Substring和IndexOf来做到这一点:
var result = "fileName_zm";
if(!string.IsNullOrEmpty(result) && result.Contains('_'))
{
result = result.Substring(0, result.IndexOf("_"));
}
优点:如果字符串为Null / Empty,则会短路,从而节省了CPU周期。