我怎样才能抓住字符串的第一个字母?

时间:2013-08-09 12:25:49

标签: asp.net vb.net

我在下面的会话中传递用户名,并想获得名字和姓氏的第一个字母。所以例如Doe,John我想获得“JD”等。任何想法我会怎么做?谢谢

Session("Username")

2 个答案:

答案 0 :(得分:3)

作为符合您要求的示例。姓氏存储在第一个位置,名字存储在最后位置,但返回的字符串的顺序是第一个/最后一个

string username = "Doe, John";
string[] parts = username.Split(' ');
string result = parts[1].Substring(0,1) + parts[0].Substring(0,1);
Console.WriteLine(result);

为清晰起见,没有错误检查,但如果您想要实际工作,则必须对零件长度进行一些检查

答案 1 :(得分:1)

如果用户名的各部分之间只有空格,请尝试使用此RegEx:

initials = Regex.Replace(Session("Username")," *([^ ])[^ ]*","$1") 

- >字符串“[^]”获取每个不是空格的字符(如果需要,可以添加字符' - ')

通过这种方式,您可以获得一个与名为“John Joe Jibbs”的人合作的解决方案^^

这只是一个概念验证。