From 2b599499dc26f0f93537d1bea4733eae68333a1c Mon Sep 17 00:00:00 2001 From: Arturs Artamonovs Date: Mon, 17 Nov 2025 00:32:31 +0000 Subject: Save old work that I have no clue what I where doing --- ADSBDecoder/ADSBRegEx.swift | 54 ++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 53 insertions(+), 1 deletion(-) (limited to 'ADSBDecoder/ADSBRegEx.swift') diff --git a/ADSBDecoder/ADSBRegEx.swift b/ADSBDecoder/ADSBRegEx.swift index e9ebe17..2841467 100644 --- a/ADSBDecoder/ADSBRegEx.swift +++ b/ADSBDecoder/ADSBRegEx.swift @@ -7,7 +7,7 @@ import Foundation import RegexBuilder - +/* let matchADSBLong = Regex { Anchor.startOfLine "*" @@ -20,8 +20,35 @@ let matchADSBLong = Regex { ,count:28) ";" +}*/ +class MatchADSBLong { + let matchADSBLong = Regex { + Anchor.startOfLine + "*" + + Repeat( + CharacterClass( + ("a"..."f"), + ("0"..."9") + ) + ,count:28) + + ";" + } + + func prefixMatch(_ line: String) -> Regex.RegexOutput>.Match? { + do { + if let match = try matchADSBLong.prefixMatch(in: line) { + return match + } + } catch { + return nil + } + return nil + } } +/* let matchADSBShort = Regex { Anchor.startOfLine "*" @@ -32,4 +59,29 @@ let matchADSBShort = Regex { ) ,count:14) ";" +}*/ + +class MatchADSBShort { + let matchADSBShort = Regex { + Anchor.startOfLine + "*" + Repeat( + CharacterClass( + ("a"..."f"), + ("0"..."9") + ) + ,count:14) + ";" + } + + func prefixMatch(_ line: String) -> Regex.RegexOutput>.Match? { + do { + if let match = try matchADSBShort.prefixMatch(in: line) { + return match + } + } catch { + return nil + } + return nil + } } -- cgit v1.2.3