Kod źródłowy Wiki Modifikace čárových kódů

Ostatnio modyfikowane 2025/11/10 12:16 przez Jan Slezák

Ukryj ostatnich autorów
Jan Šimeček 3.1 1 = Wyrażenie regularne do modyfikacji kodów kreskowych =
Jan Šimeček 1.1 2
Jan Šimeček 3.1 3 * Kody kreskowe można teraz edytować w ustawieniach za pomocą wyrażenia regularnego
4 ** Ustawienia w urządzeniu: BARCODE_MODIFIER_REGEX_PATTERN
5 ** Wyrażenie regularne musi zawierać co najmniej jedną parę nawiasów okrągłych (tzw. grupa), w której znajduje się poszukiwana część kodu kreskowego.
6 ** Przykład: **(\d+)** – wybrane zostaną wszystkie cyfry
7 ** **Uwaga**! Wyrażenie regularne musi być napisane w taki sposób, aby wybierało prawidłowe sekwencje z podanego wpisu, a nie odwrotnie (tj. ignorowało niektóre sekwencje) → Dlatego musi zawierać co najmniej jedną grupę. ´
8 ** Należy zwrócić **uwagę **na spacje przed i po, które można wstawić w polu, a następnie zapisać. Dzieje się tak na przykład podczas kopiowania wyrażenia regularnego z tego doku
Jan Šimeček 1.1 9
Jan Šimeček 3.1 10 == Wyrażenia regularne ==
Jan Šimeček 1.1 11
Jan Šimeček 3.1 12 * Wartość domyślna: **(.*)** – nie modyfikuje kodu kreskowego
13 * Usunięcie początkowych zer: **^0*(\d+)$**
14 * Usunięcie ukośnika (lub znaków specjalnych): **(\d+)\/?(\d+)** - znak „/” można zastąpić innym
15 * Usunięcie początkowych zer i ukośnika**: ^0*(\d+)\/?(\d+)**
16 * Usunięcie zer na początku i usunięcie cyfr kontrolnych: **[0]{2}([1-9]{1}[0-9]{8})[~\~\d]{1}|[0]{3}([1-9]{1}[0-9]{7})[~\~\d]{1}|[0]{1}([1-9]{1}[0-9]{5})[~\~\d]{1}|(.* )**
17 ** jeśli kod kreskowy ma długość 12 znaków, usuwa z początku zera i cyfrę kontrolną
18 ** jeśli kod kreskowy ma długość 11 znaków, usuwa z początku zera i cyfrę kontrolną
19 ** jeśli kod kreskowy ma długość 8 znaków, usuwa z początku zero i cyfrę kontrolną
20 ** jeśli nie spełnia żadnego z warunków, zwraca oryginalny ciąg znaków
21 * Można definiować kody kreskowe z dodaniem przedrostka lub przyrostka do środka ciągu znaków
22 ** separatorem wyrażenia regularnego i sposobu zamiany jest paragraf** §**
Jan Šimeček 1.1 23 ** **(91)39[0]*([0-9]*)§$11C$2**
Jan Šimeček 3.1 24 *** okrągłe nawiasy określają grupę
25 *** **$** i numer grupy reprezentuje rzeczywistą wartość w danej grupie
26 *** można następnie złożyć wynikowy ciąg znaków, w tym zamienić kolejność danych
27 *** poprzedni przykład generuje: **911C6551**
28 * (((
29 === **Konkretne wyrażenia dla niektórych instancji** ===
30 )))
Jan Šimeček 1.1 31
Jan Šimeček 3.1 32 ==== **Pilzno** ====
Jan Šimeček 1.1 33
Jan Šimeček 3.1 34 * **([\d\w]+)[\/\-]?([\d\w]+)** – usuwa znaki ukośnika i myślnika. Pozostawia cyfry i litery (litery używane w kartach pilzneńskich).
Jan Šimeček 1.1 35
36 ==== **TSK - Trenčín** ====
37
Jan Šimeček 3.1 38 * **[0]{2}([\d]{9})[\d]{1} **– Jeśli kod kreskowy ma 12 znaków i zaczyna się od dwóch zer, to są one obcinane i usuwana jest cyfra kontrolna. Czytniki tych kodów EAN13 automatycznie obcinają pierwsze zero – w rzeczywistości są to 3 zera, ale czytnik zwraca tylko 2.
Jan Šimeček 1.1 39
40 ==== TSK - Povážská knižnica ====
41
Jan Šimeček 3.1 42 * **[0]*([\d]*)** - różna liczba zer na początku kodu kreskowego, bez cyfry kontrolnej
Jan Šimeček 1.1 43
44 ==== ŠAVS ====
45
Jan Šimeček 3.1 46 * problematyczne kody: „° žš+áí” – należy usunąć spacje
47 * INC_NUMBER_MODIFIER_REGEX_PATTERN ustawione na **^\s*(\d+)$**
48 * BARCODE_MODIFIER_REGEX_PATTERN ustawione na **^\s*(\d+)$**
Jan Šimeček 1.1 49
50 ==== **Starlib** ====
51
Jan Šimeček 3.1 52 * **[0]{1}([\d]{10})[\d]{1} **- Problematyczne kody 039410319006 – odcięcie zera na początku i odcięcie cyfry kontrolnej.
Jan Šimeček 1.1 53
Jan Šimeček 3.1 54 ==== Měk Znojmo albo Měk Třebíč ====
Jan Šimeček 1.1 55
Jan Šimeček 3.1 56 * **[0]{5}([\d]{6})[\d]{1}|(.*)** - książki mają u nich 000000187352, a skanery odczytują 000001873528, więc trzeba odciąć 5 zer i cyfrę kontrolną.
Jan Šimeček 1.1 57
Jan Šimeček 3.1 58 ==== UNIZA ====
Jan Šimeček 1.1 59
Jan Šimeček 3.1 60 * (((
61 ^0(\d{17}) - jeśli kod ma długość 18, to usuwa 0 na początku
62 )))
Jan Šimeček 1.1 63
Jan Šimeček 3.1 64 == Testowanie ==
Jan Šimeček 1.1 65
Jan Šimeček 3.1 66 * W celu przetestowania wyrażenia regularnego w zakładce „System” znajduje się blok testowy, w którym zdefiniowane są używane kody kreskowe (EAN13, EAN8 ...) + można wprowadzić własne kody kreskowe (oddzielone średnikiem) do przetestowania.
67 * Należy przetestować cały zestaw możliwych kodów kreskowych.
68
69 == Gdzie się stosuje? ==
70
71 * (% style="font-size:14px" %)Wypożyczenia
72 ** Kod kreskowy
73 ** Kod kreskowy złożony
74 ** Numer czytelnika
75 * Katalog serwisowy
76 ** Zakładka „Nr kodu/Nr przydziału”
77 ** Wyszukiwanie łączone → wyszukiwanie według kodu kreskowego