Как разделить разделенные строки и извлечь из каждой первый символ, чтобы создать новую строку? ⇐ C#
-
Anonymous
Как разделить разделенные строки и извлечь из каждой первый символ, чтобы создать новую строку?
Предположим, у меня есть две строки в качестве аргументов. Имя и фамилия. Джон-Арон — имя, Альберт — фамилия. Я хочу разделить имя и фамилию, если они содержат "-" или "", а затем я хочу извлечь первые символы из каждой из этих новых строк и построить на их основе новую строку. Затем я хочу выполнить поиск внутри Active Directory с помощью Directorysearcher и, если он уже существует, взять следующий доступный символ. В этом примере это будет Джон-Арон Альберт: JAA. Если JAA samaccountname уже занято, возьмите новую букву и повторите попытку. Я не включил в этот код никакого DirectorySearcher. Проблема, с которой я столкнулся, заключается в первую очередь в создании имени samaccountname. Код ниже — это то, что я придумал до сих пор, но я застрял, и мне нужна помощь. Спасибо.
Это то, что я пробовал до сих пор, но застрял и не могу заставить это работать так, как я хочу.
публичная статическая строка UsernameGeneration(имя строки, фамилия строки) { строка [] имена = null; строка [] фамилии = ноль; строка имячасть1 =""; строка фамилиячасть1 =""; if(firstname.Contains(" ") || firstname.Contains("-")) { if(firstname.Contains(" ")){ firstnames = firstname.Split(" ".ToCharArray(),StringSplitOptions.RemoveEmptyEntries); } если(имя.Содержит("-")){ firstnames = firstname.Split("-".ToCharArray(),StringSplitOptions.RemoveEmptyEntries); } } if(lastname.Contains(" ") || Lastname.Contains("-")) { если(фамилия.Содержит(" ")){ Lastnames = Lastname.Split(" ".ToCharArray(),StringSplitOptions.RemoveEmptyEntries); } если(фамилия.Содержит("-")){ Lastnames = Lastname.Split("-".ToCharArray(),StringSplitOptions.RemoveEmptyEntries); } } char[] chars1 = firstnames[0].ToCharArray() + firstnames[1].ToCharArray(); char[] chars2 = Lastnames[0].ToCharArray() + Lastnames[0].ToCharArray(); Результат StringBuilder = новый StringBuilder(); for(int я = 1; я x[0])); вернуть новое имя; } Если я передам имя «Джон-Арон» в качестве параметра имени и «Альберт» в качестве параметра фамилии, функция вернет вот что: John-AronSystem.Linq.Enumerable+SelectArrayIterator`2[System.String,System.Char]
Предположим, у меня есть две строки в качестве аргументов. Имя и фамилия. Джон-Арон — имя, Альберт — фамилия. Я хочу разделить имя и фамилию, если они содержат "-" или "", а затем я хочу извлечь первые символы из каждой из этих новых строк и построить на их основе новую строку. Затем я хочу выполнить поиск внутри Active Directory с помощью Directorysearcher и, если он уже существует, взять следующий доступный символ. В этом примере это будет Джон-Арон Альберт: JAA. Если JAA samaccountname уже занято, возьмите новую букву и повторите попытку. Я не включил в этот код никакого DirectorySearcher. Проблема, с которой я столкнулся, заключается в первую очередь в создании имени samaccountname. Код ниже — это то, что я придумал до сих пор, но я застрял, и мне нужна помощь. Спасибо.
Это то, что я пробовал до сих пор, но застрял и не могу заставить это работать так, как я хочу.
публичная статическая строка UsernameGeneration(имя строки, фамилия строки) { строка [] имена = null; строка [] фамилии = ноль; строка имячасть1 =""; строка фамилиячасть1 =""; if(firstname.Contains(" ") || firstname.Contains("-")) { if(firstname.Contains(" ")){ firstnames = firstname.Split(" ".ToCharArray(),StringSplitOptions.RemoveEmptyEntries); } если(имя.Содержит("-")){ firstnames = firstname.Split("-".ToCharArray(),StringSplitOptions.RemoveEmptyEntries); } } if(lastname.Contains(" ") || Lastname.Contains("-")) { если(фамилия.Содержит(" ")){ Lastnames = Lastname.Split(" ".ToCharArray(),StringSplitOptions.RemoveEmptyEntries); } если(фамилия.Содержит("-")){ Lastnames = Lastname.Split("-".ToCharArray(),StringSplitOptions.RemoveEmptyEntries); } } char[] chars1 = firstnames[0].ToCharArray() + firstnames[1].ToCharArray(); char[] chars2 = Lastnames[0].ToCharArray() + Lastnames[0].ToCharArray(); Результат StringBuilder = новый StringBuilder(); for(int я = 1; я x[0])); вернуть новое имя; } Если я передам имя «Джон-Арон» в качестве параметра имени и «Альберт» в качестве параметра фамилии, функция вернет вот что: John-AronSystem.Linq.Enumerable+SelectArrayIterator`2[System.String,System.Char]
Мобильная версия