Module:SplitCats: Difference between revisions
Map Italian 5th class to Team IPW Italian 5 |
Fix 5th class exact-string map to Italian 5 |
||
| (One intermediate revision by the same user not shown) | |||
| Line 3: | Line 3: | ||
-- IPW roster codes: 148T -> 148, 178? -> 178. | -- IPW roster codes: 148T -> 148, 178? -> 178. | ||
-- Skip "14th Armd" / "2nd Armd". Lettered codes like 424-G are MII, not IPW. | -- Skip "14th Armd" / "2nd Armd". Lettered codes like 424-G are MII, not IPW. | ||
-- 540-R / 545-R / 546-R categorize as unlettered MII 540/545/546. | |||
local function miiLetterCode(part) | local function miiLetterCode(part) | ||
local num, letter = mw.ustring.match(part, '^(%d+)%s*[%-–—]%s*([A-Za-z])$') | local num, letter = mw.ustring.match(part, '^(%d+)%s*[%-–—]%s*([A-Za-z])$') | ||
if num and letter then | if num and letter then | ||
return num .. '-' .. | letter = mw.ustring.upper(letter) | ||
if letter == 'R' and (num == '540' or num == '545' or num == '546') then | |||
return num | |||
end | |||
return num .. '-' .. letter | |||
end | end | ||
return nil | return nil | ||
| Line 31: | Line 36: | ||
end | end | ||
local spaced = mw.ustring.lower(mw.ustring.gsub(part, '%s+', ' ')) | local spaced = mw.ustring.lower(mw.ustring.gsub(part, '%s+', ' ')) | ||
if | if spaced == '5th class' or spaced == 'italian 5th class' then | ||
return '5' | return '5' | ||
end | end | ||