Redd Ответов: 2

У меня есть эта проблема разделения на VB.NET


привет, добрый день! я хотел бы спросить, как разделить этот сериал
строка = 12,100
10,250
13,240
непрерывный потому что он был из серийного
я хотел бы спросить, как разделить его вот так
х= 12,10,13
г= 100,250,240

Что я уже пробовал:

я попробовал вот это
If (split.Count = 10) Then
но проблема с тем, что там было ограничение на 10 нет никакого конкретного размера или строк, когда я остановлюсь, он просто остановится, когда он получит ("D") извините за мой английский

Richard MacCutchan

Каковы фактические символы, которые вы получаете, то есть есть ли CR/LF после каждого набора, или они фиксированного размера?

Redd

Они не фиксированного размера сэр это было от датчика все данные были отправлены в мое текстовое поле и они целочисленны сэр :)

Richard MacCutchan

В своем вопросе вы утверждаете, что данные являются последовательной строкой; так что же это такое? И как именно вы должны разделить числа?

Redd

это мой образец мне так жаль что я действительно ужасно объясняю хе хе дай мне больше терпения
Тусклое значение в виде строки = "500,12,600,23,400,13.........."
x = текстовое поле 1
y = textbox2
это моя проблема я хочу разделить ее вот так
текстовое поле textbox1 = 12,23,13
поле textbox2 = 500,600,400
большое вам спасибо, сэр, за ваш ответ, мне очень жаль, что я так объясняю :( надеюсь, вы понимаете мой английский :) спасибо, сэр

Richard MacCutchan


Dim delimiter As Char = ","c
Dim substrings() As String = value.Split(delimiter)

Теперь вам просто нужен цикл так что все четные элементы в substrings (0, 2, 4 и т. д.) перейдите в textbox2, а остальные-в textbox1.

Redd

большое вам спасибо сэр Ричард :) я попробую этот код большое вам спасибо! :)

OriginalGriff

И ВАШ КЛЮЧ CAPS LOCK ЗАСТРЯЛ ВНИЗ.
ТОЛЬКО НЕ КРИЧИ. Использование всех заглавных букв считается криком в интернете и грубостью (использование всех строчных букв считается ребячеством). Используйте правильную заглавную букву, если хотите, чтобы вас воспринимали всерьез.

Redd

ладно извини за это это мой первый раз когда я пишу здесь я сожалею об этом

OriginalGriff

Это элементарный Сетевой этикет:
https://en.wikipedia.org/wiki/Etiquette_in_technology

2 Ответов

Рейтинг:
2

Maciej Los

Попробовать это:

Dim s As String() = {"12,100", "10,250", "13,240"}
Dim result = s.Select(Function(x) x.Split(New String(){","}, StringSplitOptions.RemoveEmptyEntries)) _
		.Select(Function(z) New With { _
			.x = z(0), _
			.y = z(1)})

For Each r In result
	Console.WriteLine("x={0} | y={1}", r.x, r.y)
Next


Рейтинг:
18

Redd

Большое спасибо!

Maciej Los

5ed!