// // ADSBRegEx.swift // ADSBDecoder // // Created by Jacky Jack on 30/06/2024. // import Foundation import RegexBuilder /* let matchADSBLong = Regex { Anchor.startOfLine "*" Repeat( CharacterClass( ("a"..."f"), ("0"..."9") ) ,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 "*" Repeat( CharacterClass( ("a"..."f"), ("0"..."9") ) ,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 } }