Changes between Version 2 and Version 3 of Rules/UkrainePhoneNumbers


Ignore:
Timestamp:
2022-05-23T20:15:07+02:00 (4 years ago)
Author:
andygol
Comment:

Added check for key existence; improvements in regex

Legend:

Unmodified
Added
Removed
Modified
  • Rules/UkrainePhoneNumbers

    v2 v3  
    88    author: "andygol";
    99    link: "https://josm.openstreetmap.de/wiki/Rules/UkrainePhoneNumbers";
    10     min-josm-version: "11424";
     10    min-josm-version: "11424"; /* due to territory selectors */
    1111    baselanguage: "en";
    1212}
     
    1616}
    1717
    18 *[number_of_tags() > 1][/^(contact:)?(phone|fax)(?!:UA)$/!~/^((?=\+\b380[0-9 ]{12}\b)(?=.*(\+\b380 (?:\d{2} \d{3} \d{4}|\d{3} \d{2} \d{4}|\d{4} \d{2} \d{3})\b))((\+\b380 (?:\d{2} \d{3} \d{4}|\d{3} \d{2} \d{4}|\d{4} \d{2} \d{3})\b));?)*$/][inside("UA")] {
    19     throwWarning: tr("\"phone\" tag");
    20     group: tr("Incorrect phone number");
     18*[/^(contact:)?(phone|fax)(?!:UA)$/][/^(contact:)?(phone|fax)(?!:UA)$/ !~ /^((;?(?=(\+\b380 [3-9][0-9][0-9 ]{9}\b)|(0 800 \d{3} \d{3}))(?=.*((0 800 \d{3} \d{3})|(\+\b380 (?:\d{2} \d{3} \d{4}|\d{3} \d{2} \d{4}|\d{4} \d{2} \d{3})\b)))((0 800 \d{3} \d{3})|(\+\b380 (?:\d{2} \d{3} \d{4}|\d{3} \d{2} \d{4}|\d{4} \d{2} \d{3})\b)))*)$/][inside("UA")] {
     19    throwWarning: tr("Incorrect \"phone\" tag");
    2120    suggestAlternative: tr("format +380⎵44⎵123⎵4567;+380⎵352⎵12⎵3456;+380⎵5345⎵12⎵345");
    2221    assertMatch: "node phone=+380 44 366 7002";
     
    2423}
    2524
    26 *[number_of_tags() > 1][/^phone$/=~/^((0 800 \d{3} \d{3});?)*$/][inside("UA")] {
    27     throwError: tr("\"phone\" tag");
    28     group: tr("Use \"phone:UA\" key for toll free phones instead");
     25*[/^phone$/ =~ /^((0 800 \d{3} \d{3});?)*$/][inside("UA")] {
     26    throwError: tr("{0}", "");
     27    group: tr("A toll-free phone number is listed in the \"phone\" tag");
    2928    fixChangeKey: "phone=>phone:UA";
    3029    assertMatch: "node phone=0 800 500 609";