Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > .NET Frameworks (точка нет фреймворки) > C# (си шарп)
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 30.10.2015, 08:27   #1
lucky_thi13en
Пользователь
 
Регистрация: 24.09.2015
Сообщений: 12
По умолчанию Разбить строку на подстроки в указанном виде

как мне сплитануть строку
Код:
string str = "1;2;3;4;5;6;{RT16}1;2;3;4;5;6{RT16}1;2;3;4;5;6{RT16}1;2;3;4;5;6"
в вот такой вид:
Код:
string newSTR = "<node> \n" +
"<elementA>1</elementA> \n" +
"<elementB>2</elementB> \n" +
"<elementC>3</elementC> \n" +
"<elementE>4</elementE> \n" +
"<elementF>5</elementF> \n" +
"<elementG>6</elementG> \n" +
"</node> \n" +
"<node> \n" +
"<elementA>1</elementA> \n" +
"<elementB>2</elementB> \n" +
"<elementC>3</elementC> \n" +
"<elementE>4</elementE> \n" +
"<elementF>5</elementF> \n" +
"<elementG>6</elementG> \n" +
"</node> \n" +
"<node> \n" +
"<elementA>1</elementA> \n" +
"<elementB>2</elementB> \n" +
"<elementC>3</elementC> \n" +
"<elementE>4</elementE> \n" +
"<elementF>5</elementF> \n" +
"<elementG>6</elementG> \n" +
"</node> \n" +
"<node> \n" +
"<elementA>1</elementA> \n" +
"<elementB>2</elementB> \n" +
"<elementC>3</elementC> \n" +
"<elementE>4</elementE> \n" +
"<elementF>5</elementF> \n" +
"<elementG>6</elementG> \n" +
"</node>"
Ну вы поняли что спецсимвол {RT16} разбивает строку на узлы, а точка с запятой разбивает на элементы. Помогите пожалуйста оч нужно. заранее спасибо

Последний раз редактировалось lucky_thi13en; 30.10.2015 в 08:32.
lucky_thi13en вне форума Ответить с цитированием
Старый 30.10.2015, 09:49   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,792
По умолчанию

Код:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            string str = "1;2;3;4;5;6;{RT16}1;2;3;4;5;6;{RT16}1;2;3;4;5;6;{RT16}1;2;3;4;5;6";
            int b = -1;
            string a = string.Join(" ", str.Replace("{RT16}", "{RT16};")
                   .Split(';')
                   .Select(i => (i != "{RT16}") 
                       ? ("\t<element" + ((char)(++b + 'A')) + ">" + i + "</element" + ((char)(b + 'A')) + ">\n") 
                       : ("</node>\n<node>\n"+Convert.ToString(b=-1).Replace("-1"," "))
                   ).ToArray()
            );
            Console.Write(a); Console.ReadKey();
        }
    }
}
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 30.10.2015, 09:53   #3
lucky_thi13en
Пользователь
 
Регистрация: 24.09.2015
Сообщений: 12
По умолчанию

большое спасибо
lucky_thi13en вне форума Ответить с цитированием
Старый 30.10.2015, 10:05   #4
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,792
По умолчанию

Пожалуйста )
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 30.10.2015, 10:27   #5
lucky_thi13en
Пользователь
 
Регистрация: 24.09.2015
Сообщений: 12
По умолчанию

А ещё вот такой вопрос а как сделать чтоб узлы назывались по разному, например:

string newSTR = "<node> \n" +
"<ID>1</ID> \n" +
"<ParentID>2</ParentID> \n" +
"<KOD>3</KOD> \n" +
"<VES>4</VES> \n" +
"<ROST>5</ROST> \n" +
"<NAME>6</NAME> \n" +
"</node> \n" +
"<node> \n" +
"<ID>1</ID> \n" +
"<ParentID>2</ParentID> \n" +
"<KOD>3</KOD> \n" +
"<VES>4</VES> \n" +
"<ROST>5</ROST> \n" +
"<NAME>6</NAME> \n" +
"</node> \n" +
"<node> \n" +
"<ID>1</ID> \n" +
"<ParentID>2</ParentID> \n" +
"<KOD>3</KOD> \n" +
"<VES>4</VES> \n" +
"<ROST>5</ROST> \n" +
"<NAME>6</NAME> \n" +
"</node> \n" +
"<node> \n" +
"<ID>1</ID> \n" +
"<ParentID>2</ParentID> \n" +
"<KOD>3</KOD> \n" +
"<VES>4</VES> \n" +
"<ROST>5</ROST> \n" +
"<NAME>6</NAME> \n" +
"</node> \n" +
lucky_thi13en вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Разбить исходную строку на две подстроки с учётом слов (на Delphi) Евгений)))) Помощь студентам 1 12.12.2013 21:54
c++ разбить строку на две подстроки inmanika Помощь студентам 0 12.05.2012 20:52
Вхождение подстроки в строку! Edimus Общие вопросы C/C++ 4 04.04.2011 07:50
C++: разбить строку на подстроки apromix Помощь студентам 2 04.10.2009 01:07
Вставка подстроки в строку Kortes Общие вопросы C/C++ 2 25.12.2008 11:51