Рубрики

применяемость (1) Api (1) Mysql (1) News (2) Oem2car (1) Suppliers (1) Tecdoc 4_2017 (2) Новости (1) Реклама и маркетинг (1)

Обновления


Данная спецификация описывает основные понятия в разработке приложений отраслевого рынка автозапчастей.

Стандартизированный артикул(номер) (numberStandart, shortArticle) см. wiki/RFC-23667

Производитель автозапчастей предлагает свою нумерацию деталей. В номерах часто можно встретить спец. символы(-,. и т.д.). Для оптимизации работы с деталями в базах данных спецсимволы убирают.

Текущий тренд показывает дополнительное условие к стандартизированному номеру - большинство продавцов поднимают его еще в верхний регистр.
Хранить артикулы в БД необходимо только после стандартизации номера. Реализации метода на разных языках: Данный метод является сильно нагруженным и крайне не рекомендуется использовать регулярные выражения.
   

PHP

function clearString($string){ return str_replace(['!','#', '$', '%', '&', "'", '*', '+', '-', '=', '?', '^','_','`', '{', '|', '}', '~', '@', '.', '[', ']'], '', filter_var($string, FILTER_SANITIZE_EMAIL)); }


JAVA

public static String getNumberStandart(String a) { if (a == null) return ""; char[] charList = a.toCharArray(); StringBuilder stringBuilder = new StringBuilder(); char charItem; for (int i = 0; i < charList.length; i++) { charItem = charList[i]; if (charItem >= '\u0030' && charItem <= '\u0039' || charItem >= '\u0061' && charItem <= '\u007A' || charItem >= '\u0430' && charItem <= '\u044F') { stringBuilder.append(charItem); } if (charItem >= '\u0041' && charItem <= '\u005A' || charItem >= '\u0410' && charItem <= '\u042F') { stringBuilder.append(Character.toLowerCase(charItem)); //TODO не видит буквы ё, Ё } } return stringBuilder.toString(); }

1C

Function NumberStandartGet(Number) СurrentNumber = Lower(Number); StrLen = StrLen(СurrentNumber); NumberStandart = ""; Для Stat = 1 По StrLen Цикл Symbol = Mid(СurrentNumber, Stat, 1); CharCode = CharCode(Symbol); //английские с 97 по 122 | русские с 1072 по 1103 | цифры с 48 по 57 If (CharCode >= 97 And CharCode <= 122) Or (CharCode >= 48 And CharCode <= 57) Or (CharCode >= 1072 And CharCode <= 1103) Then NumberStandart = NumberStandart+String(Symbol); EndIf; КонецЦикла; Return NumberStandart; EndFunction