@CSharpChatЭта группа больше не существует

Страница 1223 из 1888
Andrey
11.06.2017
16:56:06
omg

Ну хотя бы превычисления сделай)

var temp = value.Split(',').Select(a => a.Split('=')[1]);

А потом раскидай из массива.

Google
Ilya
11.06.2017
17:13:57


Sarmkadan
11.06.2017
17:15:10
решение интересное, правда для моего понимание сложновато :) ( сам бы так изящно не написал)

Sarmkadan
11.06.2017
17:16:25
не понимание что происходит есть, убриаешь все кроме цыферок, и тупо кидаешь в масив только 4 цыферки, и передаешь только их)

Вячеслав
11.06.2017
17:17:45
Вроде все понятно что там делаетя

Вначале парсятся цифры

Потом они переносятся в ту чать инта в которой должны быть

Потом склеиваются

Sarmkadan
11.06.2017
17:19:20
всегда радовал шарп вариативностью своих решений, особенно однострочными)

Вячеслав
11.06.2017
17:19:51
Ну это не есть хорошо

Andrey
11.06.2017
17:19:52
А что за задача?

Sarmkadan
11.06.2017
17:20:06
задача была распарсить строку в color

Google
Sarmkadan
11.06.2017
17:20:25
вид строки [A=255, R=217, G=35, B=35]

Вячеслав
11.06.2017
17:20:25
Это полюбому нужно выносить в отдельный метод с нормальным названием

Andrey
11.06.2017
17:21:15
вид строки [A=255, R=217, G=35, B=35]
Порядок произвольный у цветов?

Sarmkadan
11.06.2017
17:21:29
нет статичный

Andrey
11.06.2017
17:21:49
Тогда регулярка.

И не париться.

Для этого регулярки и придумали.

Sarmkadan
11.06.2017
17:22:25
к слову о вариативности, правда метод выше намного более изяшен в исполнении)

Andrey
11.06.2017
17:22:26
Да даже если порядок не статичный регулярка лучше выглядит.

Вы серьезно регулярку не рассматривали?

Sarmkadan
11.06.2017
17:26:14
видимо нет, как по мне самый простой метод у меня, а самый завуалированый у Ильи, регулярка не то)

хотя было бы интересно сравнить "скорость" всех методов)

Andrey
11.06.2017
17:26:52
Это простой?

Он нихрена не понятный.

Но ладно.

Sarmkadan
11.06.2017
17:27:07
разве?)

если-бы я в одну строку впихнул - да был бы ад, а так все по полочкам

Andrey
11.06.2017
17:28:38
Да, через неделю ты не поймёшь что этот код делает. У тебя нет привязки к контексу. А регулярка сама показывает что парсит.

Не надо делать руками то, для чего есть удобные инструменты.

Владимир
11.06.2017
17:31:53


Google
Vyacheslav
11.06.2017
17:42:17


Andrey
11.06.2017
17:44:00
Только лучше полную регулярку написать, иначе решение не отличается от представленных выше. Такое же непонятное.

Ilya
11.06.2017
17:50:37
Andrey
11.06.2017
17:51:08
Axm
11.06.2017
17:51:45
не уверен, что регулярное выражение будет быстрее сплита сплита
Если его вызывать тысячи раз в секунду, то да, а так наверно похер

Ilya
11.06.2017
17:53:50


Vyacheslav
11.06.2017
17:54:18
\[A=(\d{3}), R=(\d{3}), G=(\d{3}), B=(\d{3})\]
фе. какая гадасть. регулярки не так сложны чтобы помнить что за что отвечает

не читабельно

Ilya
11.06.2017
17:54:45
\[A=(\d{3}), R=(\d{3}), G=(\d{3}), B=(\d{3})\]
надо ещё именованные группы

Axm
11.06.2017
17:55:43
\[A=(\d{3}), R=(\d{3}), G=(\d{3}), B=(\d{3})\]
Буквы и равно можно включить в регулярку

Ilya
11.06.2017
17:55:47
не надо использовать регулярные выражения, там где они не нужны

Vyacheslav
11.06.2017
17:56:16
ну как кому как? увидев маленькую регулярочку можно сразу понять что она выбирает. а увидев сплит с тучей символов идущих подряд все в глазах мельтешит

Gid
11.06.2017
17:56:32
Sranniy venik

Почему кор ставит иис экспресс

Google
Gid
11.06.2017
17:56:47
Даже если я его из конфига удалил

Ilya
11.06.2017
17:56:57
Some people, when confronted with a problem, think «I know, I'll use regular expressions.» Now they have two problems.

Andrey
11.06.2017
17:58:35
не надо использовать регулярные выражения, там где они не нужны
Шта? Нужно разобрать строку. Где ещё использовать регулярки?

Pavel
11.06.2017
17:58:42
\[A=(\d{3}), R=(\d{3}), G=(\d{3}), B=(\d{3})\]
Только регулярка неправильная )

Vyacheslav
11.06.2017
17:59:00
Some people, when confronted with a problem, think «I know, I'll use regular expressions.» Now they have two problems.
ну мб. но если не так часто регулярку надо применять, то можно оставить)

Admin
ERROR: S client not available

Andrey
11.06.2017
17:59:01


Специально разбор проверил.

Автомат верный строится.

Ilya
11.06.2017
17:59:29
Шта? Нужно разобрать строку. Где ещё использовать регулярки?
когда нужно разобрать сложную или большую строку

Pavel
11.06.2017
17:59:47
\[A=(\d+), R=(\d+), G=(\d+), B=(\d+)\]

А неправильно {3}->{1,3}

Andrey
11.06.2017
18:00:35
\[A=(\d+), R=(\d+), G=(\d+), B=(\d+)\]
Да, у меня может быть только 3 символа. Накосячил.

Ilya
11.06.2017
18:00:59
вот поэтому сплит

Andrey
11.06.2017
18:01:16
когда нужно разобрать сложную или большую строку
А маленькие можно непонятно разбирать. Через месяц ты уже будешь медитировать на код, не понимая что он делает.

Pavel
11.06.2017
18:01:19
Регулярки прекрасны и ОЧЕНЬ удобны

Sarmkadan
11.06.2017
18:01:32
Давайте остановимя на том что оно работает, и безотказно, и лезть не нужно туда опять, ибо статика

Andrey
11.06.2017
18:01:38
*афсузфдь* Ок, лучше делать через сплит.

Pavel
11.06.2017
18:01:44
Надо только привыкнуть

Google
Sarmkadan
11.06.2017
18:01:49
регулярки лутше использоваться при парсе страничек каких-то

а при парсе строки проще указать что нужно и не париться

Pavel
11.06.2017
18:02:19
Регулярки прекрасно использовать где они нужны )

Собственно, если надо парсить текст, то лучше писать свой парсер/лексер. Но это часто ОЧЕНЬ долго

Andrey
11.06.2017
18:03:25
И уже есть готовые на 99% форматов.

Pavel
11.06.2017
18:03:28
Второй по удобству - регулярки

Третий - сплиты )

Vyacheslav
11.06.2017
18:04:06
Регулярки прекрасны и ОЧЕНЬ удобны
/(?:(?:\s*[+>~,]\s*|\s+)|[^:+>~,\s\\[\]]+(?:\\.[^:+>~,\s\\[\]]*)*)|\[(?:[^\\[\]]*(?:\\.[^\\[\]]*)*|[^=]+=~?\s*(?:"[^\\"]*(?:\\.[^"\\]*)*"|'[^\\']*(?:\\.[^'\\]*)*'))\]|:[^\\:([]+(?:\\.[^\\:([]*)*(?:\((?:[^\\()]*(?:\\.[^\\()]*)*|"[^\\"]*(?:\\.[^"\\]*)*"|'[^\\']*(?:\\.[^'\\]*)*')\))?/g ??

Pavel
11.06.2017
18:04:12
Смотря что считать "уже есть"

Sarmkadan
11.06.2017
18:04:39
ну каждому свое, кому-то весело играться в таких строках как +>~,]\s*|\s+)|[^:+>~,\s\\[\]]+(?:\\.[^:+>~,\s\\[\]]*)*)|\[(?:[^\\[\]]*(?:\\.[^\\[\]]*)*|[^=]+=~?\s* )

Pavel
11.06.2017
18:04:41
Возможно эта строка замещает 2к-3к строк

Sarmkadan
11.06.2017
18:04:57
мне к примеру хватает и сплита для строки из 30 символов)

Летучая
11.06.2017
18:04:59
Andrey
11.06.2017
18:05:04
Если руки из жопы, то и такое может быть.

Vyacheslav
11.06.2017
18:05:14
но выглядит адово

Страница 1223 из 1888

Эта группа больше не существует Эта группа больше не существует