首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

C#关于字符串处理

2013-11-09 
C#关于字符串处理求助请问如何用最简洁的方法将NickNameHik-Naming/NickName中“-”之前的字符提取出来

C#关于字符串处理求助
请问如何用最简洁的方法将<NickName>Hik-Naming</NickName>中“-”之前的字符提取出来呢,即:Hik
[解决办法]
本帖最后由 caozhy 于 2013-11-08 11:58:51 编辑

string s = "<NickName>Hik-Naming</NickName>";
string name = Regex.Match(s, @"(?<=\<NickName\>)[^\<]+(?=\<\/NickName\>)").Value;
string firstname = name.Split('-')[0];

[解决办法]
            string str = "<NickName>Hik-Naming</NickName>";
            var sp=str.Split('-');
            var rest= sp[0].Substring(sp[0].IndexOf('>')+1);
[解决办法]
            var s1 = str.Substring(str.IndexOf('>') + 1);
            var s2 = s1.Substring(0,s1.IndexOf('<'));
            string firstname = s2.Split('-')[0];
[解决办法]
如果是xml的话。SelectSingleNode("NickName").innerText可得到Hik-Naming

或者直接用正则
            string s = "<NickName>Hik-Naming</NickName>";
            string name = Regex.Match(s, @"(?i)(?<=(<NickName>))[^-]+(?=[^<]+</NickName>)").Value;

热点排行