Fix military aircraft classification regex to reduce false positives (issue-1)

This commit is contained in:
2026-09-16 23:27:47 -04:00
parent 534dc6d2df
commit 4520447156
+5 -2
View File
@@ -220,7 +220,7 @@ async function syncMilitaryIcao() {
try { try {
const page = await fetch(ADSB_URL + ':8080').then(resp => resp.text()); const page = await fetch(ADSB_URL + ':8080').then(resp => resp.text());
const db = /databaseFolder = "(db-.+?)"/.exec(page); const db = /databaseFolder = "(db-.+?)"/.exec(page);
const res = await fetch(ADSB_URL + `:8080/${db[1]}/ranges.js`); const res = await fetch(ADSB_URL + `${db[1]}/ranges.js`);
if (!res.ok) throw new Error(`HTTP ${res.status}`); if (!res.ok) throw new Error(`HTTP ${res.status}`);
const { military } = await res.json(); const { military } = await res.json();
db.exec('DELETE FROM military_ranges'); db.exec('DELETE FROM military_ranges');
@@ -243,7 +243,10 @@ export function classifyAircraft(row) {
const matchesAny = (fields, list) => fields.some(f => { const matchesAny = (fields, list) => fields.some(f => {
const value = normalizeName(f); const value = normalizeName(f);
return value && list.some(k => value.includes(normalizeName(k))); return value && list.some(k => {
const kw = normalizeName(k);
return kw && new RegExp('\\b' + kw.replace(/[.*+?^${}()|[\\]\\]/g, '\\$&') + '\\b', 'i').test(value);
});
}); });
const operators = [row.operator, row.operatorCallsign, row.owner]; const operators = [row.operator, row.operatorCallsign, row.owner];