我在下面的会话中传递用户名,并想获得名字和姓氏的第一个字母。所以例如Doe,John我想获得“JD”等。任何想法我会怎么做?谢谢
Session("Username")
答案 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”的人合作的解决方案^^
这只是一个概念验证。