← All source files

V1 / 8f6c47b125e8

KokoroRegex.cs

Lilith/Core/Kokoro/KokoroRegex.cs

Changed in this version
CS
using System.Text.RegularExpressions;

namespace Lilith.Core.Kokoro;

internal static partial class KokoroRegex
{
    [GeneratedRegex(@"(?:`{3,}|~{3,})[\s\S]*?(?:(?:`{3,}|~{3,})|\z)", RegexOptions.CultureInvariant)]
    public static partial Regex CodeFence();

    [GeneratedRegex(@"!?\[(?<label>[^\]]*)\]\((?:[^()\r\n]|\([^()\r\n]*\))*\)", RegexOptions.CultureInvariant)]
    public static partial Regex MarkdownLink();

    [GeneratedRegex(@"https?://[^\s<>]+", RegexOptions.IgnoreCase | RegexOptions.CultureInvariant)]
    public static partial Regex WebUrl();

    [GeneratedRegex(@"(?<![\w\\])(?<mark>\*{1,3}|_{1,3})(?<value>\S(?:[^\r\n]*?\S)?)\k<mark>(?!\w)", RegexOptions.CultureInvariant)]
    public static partial Regex Emphasis();

    [GeneratedRegex(@"~~(?<value>[^\r\n]*?)~~", RegexOptions.CultureInvariant)]
    public static partial Regex StrikeThrough();

    [GeneratedRegex(@"^(?:[-*+]|\d+[.)])[ \t]+", RegexOptions.CultureInvariant)]
    public static partial Regex ListMarker();

    [GeneratedRegex(@"^#{1,6}[ \t]+", RegexOptions.CultureInvariant)]
    public static partial Regex HeadingMarker();

    [GeneratedRegex(@"^(?:>[ \t]*)+", RegexOptions.CultureInvariant)]
    public static partial Regex QuoteMarker();

    [GeneratedRegex(@"\s+", RegexOptions.CultureInvariant)]
    public static partial Regex Whitespace();

    [GeneratedRegex(@"([!?])\1+", RegexOptions.CultureInvariant)]
    public static partial Regex RepeatedPunctuation();

    [GeneratedRegex(@"[ \t]+([,.;:!?])", RegexOptions.CultureInvariant)]
    public static partial Regex SpaceBeforePunctuation();
}