TGViewer
C# (C Sharp) programming C# (C Sharp) programming @csharp_ci · 18.1K subscribers
Post #1879 2.89K
C# 14: задача на Span без аллокаций

Дана строка:


42|john@example.com|127


Нужно распарсить её без Split(), Regex и временных string:


public readonly record struct UserLog(
int Id,
ReadOnlyMemory<char> Email,
int Latency
);


Реализуйте:


static bool TryParse(
ReadOnlyMemory<char> input,
out UserLog result
)


Требования:

• парсинг через Span<char>
• false при битом формате
• без лишних аллокаций
• Email должен ссылаться на исходный buffer

Пример:


var input = "42|john@example.com|127".AsMemory();

if (TryParse(input, out var log))
{
Console.WriteLine(log.Id); // 42
Console.WriteLine(log.Email); // john@example.com
Console.WriteLine(log.Latency); // 127
}


Вопрос:

почему нельзя сохранить ReadOnlySpan<char> в UserLog, а ReadOnlyMemory<char> можно?
More from @csharp_ci
  1. Sep 20, 2026🧩 Задача на C#: почему воркер завис, хотя очередь почти пустая? Есть канал вместимостью о…
  2. Sep 18, 2026Post #1882
  3. Sep 17, 2026🔥 Microsoft выпустила .NET 11 RC1**- первый релиз-кандидат уже с **go-live support, то ес…
  4. Sep 15, 2026photo post
  5. Sep 11, 2026Post #1877
  6. Sep 11, 2026Unity подключила Claude Code, Codex и Grok к разработке игр 🎮 Компания опубликовала офици…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →