(Real-Life Example: IMEI Extraction, GPS Packet Parsing, Data Validation)”**
Regex (Regular Expressions) C# का सबसे तेज़,
सबसे compact, और
सबसे smart text-processing tool है।
GPS Tracking Server में Regex इतनी power देता है कि:
IMEI extract
Latitude / Longitude निकालना
GPS packet format validate
Command response match
Alerts detect
Protocol parse
Unknown packets filter
सब कुछ कुछ ही lines में हो जाता है।
आज हम Regex को आसान भाषा + आपके G17/S15 जैसे GPS devices के real scenarios के साथ सीखेंगे।
Regex =
Text search और pattern matching का सबसे powerful तरीका।
Example:
IMEI निकालना:
861128068064267
Regex:
\d{15}
मतलब:
15 digits → IMEI मिल जाएगा।
Namespace:
using System.Text.RegularExpressions;
Matching:
Regex.Match(text, pattern);
Packet:
##,imei:861128068064267,A;
Regex:
var match = Regex.Match(packet, @"imei:(\d{15})");
string imei = match.Groups[1].Value;
Instant extraction!
No splitting needed.
Packet:
lat:26.8543;lon:80.9465;speed:45;
Regex:
var lat = Regex.Match(pkt, @"lat:(\-?\d+\.?\d*)").Groups[1].Value;
var lon = Regex.Match(pkt, @"lon:(\-?\d+\.?\d*)").Groups[1].Value;
GPS coordinates clean निकाल सकते हो।
Packet example:
imei:861128068064267,lat:26.85,lon:80.94,speed:45,bat:89;
Regex:
var pattern = @"imei:(\d+),lat:(\-?\d+\.?\d*),lon:(\-?\d+\.?\d*),speed:(\d+),bat:(\d+)";
var m = Regex.Match(pkt, pattern);
var dev = new GPSDevice {
IMEI = m.Groups[1].Value,
Latitude = double.Parse(m.Groups[2].Value),
Longitude = double.Parse(m.Groups[3].Value),
Speed = int.Parse(m.Groups[4].Value),
Battery = int.Parse(m.Groups[5].Value)
};
यह packet parser industry-standard है।
bool isValid = Regex.IsMatch(pkt, @"imei:\d{15}");
अगर false → packet unknown/dummy है।
GPS servers में यह security feature है।
Text:
SOS,imei:861128068064267
Regex:
Regex.IsMatch(pkt, @"SOS")
or more strict:
Regex.IsMatch(pkt, @"^SOS")
Regex.Match(pkt, @"speed:(\d+)").Groups[1].Value
Then:
if(speed > 70) RaiseAlert("Overspeed");
string clean = Regex.Replace(pkt, @"\s+", "");
Whitespace remove → packet perfect।
RegexOptions.IgnoreCase RegexOptions.Multiline RegexOptions.Compiled
Compiled Regex → fastest performance
Must for high-frequency packet parsing.
Example:
Regex imeiRegex = new Regex(@"imei:(\d{15})", RegexOptions.Compiled);
Now thousands packets per sec → कोई समस्या नहीं।
var matches = Regex.Matches(pkt, @"\d+");
foreach(Match m in matches)
{
Console.WriteLine(m.Value);
}
Response:
OK:SET_APN
Regex:
Regex.IsMatch(resp, @"OK:SET_APN");
या dynamic:
Regex.IsMatch(resp, @"OK:" + cmdName);
❌ Regex बहुत complex बना देना
✔ Simple रखें
❌ Regex begin/end markers नहीं लगाना
✔ Use ^ and $ when possible
❌ Every packet के लिए नया regex बनाना
✔ Compiled regex use करें
❌ गलत escape characters
✔ Use @"text" format
Regex आपके GPS server को बनाता है:
✔ Super-fast packet parser
✔ Minimal code
✔ Perfect accuracy
✔ Easy validation
✔ High-performance real-time handling
IMEI extract करना हो, alerts detect करने हों,
या पूरा packet parse — Regex आपका सबसे powerful टूल है।
0 Comments
Thanks for Commenting on our blogs, we will revert back with answer of your query.
EmojiThanks & Regards
Sonu Yadav