我正在尝试将歌曲标题分成两个字符串 - 艺术家和歌曲。 我收到这样的原始字符串:“artist - song”。 使用此代码,我使用' - '作为spliiter分割字符串:
char[] splitter = { '-' };
string[] songInfo = new string[2];
songInfo = winAmp.Split(splitter);
这个工作正常,除非我到了一个名字中带有' - '的乐队,比如SR-71。 但是,由于原始字符串用空格分隔,然后再用 - 和空格(如SR-71 - 明天),我怎么拆分字符串才会发生这种情况?我尝试将分割器更改为字符串并输入
string[] splitter = { " - " };
,但它返回没有重载匹配。
答案 0 :(得分:2)
由于某种原因,string.Split
没有只接受字符串数组的重载。
您需要致电this overload:
string[] songInfo = winAmp.Split(new string[] { " - " }, StringSplitOptions.None);
不要问我为什么。
答案 1 :(得分:0)
您也可以使用
Match M = System.Text.RegularExpressions.Regex.match(str,"(.*?)\s-\s(.*)");
string Group = M.Groups[1].Value;
string Song = M.Groups[2].Value;