WikiDer > Yordam: Tahlilchi funktsiyasini almashtirish - Vikipediya
![]() | Ushbu yordam sahifasi a qanday qilib ko'rsatma berish. Unda Vikipediya normalari va amaliyotlarining ba'zi jihatlari (lariga) oid jarayonlar yoki protseduralar batafsil bayon etilgan. Bu bittasi emas Vikipediya qoidalari yoki ko'rsatmalari, va o'zgaruvchan darajalarni aks ettirishi mumkin Kelishuv va tekshirish. |
The ajralish funktsiyasini almashtirish, "deb kodlangan# almashtirish", tanlov ro'yxatida birinchi mos keladigan filialni tanlaydi, a vazifasini bajaradi ish bayonoti.
Har bir filial a bo'lishi mumkin qiymat, an ifoda (hisoblash), yoki a shablon qo'ng'iroq qilish,[1] kalit qiymatiga mos keladigan tarzda baholandi va taqqoslandi. Ko'pgina #switch tuzilmalari oddiy qadriyatlar to'plami orasida tarqalish uchun ishlatilgan bo'lsa-da, filiallar ham o'z ichiga olishi mumkin mantiqiy iboralar kabi harakat qilib, haqiqiy sinovlarigacha sinovdan o'tadigan dastlabki shartlar to'plami sifatida harakat qilish if-elseif-elseif-elseif-else tuzilishi. Kalit qiymati a bilan taqqoslanadi belgilar qatori, raqam emas, shuning uchun "5" "5.00" ga mos kelmaydi, agar u bilan taqqoslanmasa "{{#expr: {{{1 | 5.00}}} & nbsp;}}" (= "5")
.
#Switch 1000 dan ortiq shoxchalarni o'z ichiga olishi mumkin, lekin tezlikni oshirish uchun har bir nechta yoki ichki qismlarning har birida 100 dan kam shoxchalar bo'lishi kerak. Yuqori shoxlar tezroq bajariladi, pastki shoxlar esa barcha yuqori tarmoqlarni taqqoslashni kutishlari kerak. Chunki bu ajralish funktsiyasi, #switch har qanday sahifada, hattoki maqola matnida ham ishlatilishi mumkin, lekin aksariyat hollarda #switch odatda a ichida ishlatiladi shablon, a ga qarab filialga o'tish parametr shablonga o'tkazilgan qiymat.
Umumiy format
The # almashtirish funktsiya bitta qatorli shakl bo'lishi mumkin:
{{# almashtirish: {{{x}}} | 1 = bitta | 2 = ikkita | 3 | 4 | 5 = 3-5 oralig'i | boshqa}}
Bu bitta satr # almashtirish ning qiymatini o'qiydi {{{x}}}. 1 qiymati uchun u "bitta" ni qaytaradi. Agar 2 qiymati bo'lsa, u "ikki" ga qaytadi. 3, 4 yoki 5 qiymatlari uchun u "3-5 oralig'ida" qaytadi. Boshqa har qanday qiymat yoki nol qiymat uchun u "boshqasini" qaytaradi.
Biroq, ko'p hollarda # almashtirish funktsiya ko'p satrli shakl bo'lib, har bir filial boshqa satrda joylashgan bo'lib, quyidagicha:
{{# almashtirish: {{{x}}} | 1 = bitta | 2 = ikkita | #default = other | 3 | 4 | 5 = har qanday 3-5 | {{#expr: 2 * 3}} = olti | {{#expr: 2 * 3 + 1}} = {{lc: SEVEN}} <!--ko'rsatuv ->}}
Bu sukut bo'yicha ishni ko'rsatishning muqobil usulini ko'rsatadi, u birinchi, oxirgi yoki biron bir joyda paydo bo'lishi mumkin.
Agar biron bir sukut belgilanmasa va berilgan qiymatga hech qanday holat mos kelmasa, nol qiymat qaytariladi.
A ning har bir filiali uchun # almashtirish, "=" tenglik belgisining har ikki tomoni oddiy qiymat, ifoda yoki shablon qo'ng'irog'i bo'lishi mumkin.
Kalitlarni if-elseif-elseif sifatida ishlatish
#Switch funktsiyasi oldindan aniqlangan shartlar to'plami sifatida tuzilishi mumkin, ular haqiqiy ("1" ga teng) bo'lguncha sinovdan o'tkaziladi. Masalan, nolga bo'linmaslik uchun raqamlarni ekranga chiqarish uchun quyidagi formulada: '"" UNIQ - postMath-00000001-QINU ""':
{{# almashtirish: 1
| {{#ifeq: {{{x2 | none}}} | none | 1 | 0}} = x2 parametrida ma'lumotlar yo'q.
| {{#ifeq: {{{y2 | none}}} | none | 1 | 0}} = y2 parametrida ma'lumotlar yo'q.
| {{#expr: {{{x2}}} = 0}} = x2 parametr 0 ga teng - bo'linmaydi.
| {{#expr: {{{y2}}} = 0}} = y2 parametr 0 ga teng - bo'linmaydi.
| 1 = {{#expr: {{{x}}} / {{{x2}}} + {{{y}}} / {{{y2}}}}}
}}
X2 va y2 ni sinab ko'rishda, agar ularning har ikkisi nolga teng bo'lsa (yo'q), u holda #switch ogohlantirish xabari bilan tugaydi, aksincha o'rtacha vazn x, y, x2 va y2 bo'lgan ikkita miqdor. Har bir filial oldingi shart vazifasini bajaradi, shuning uchun butun #switch tuzilishi unga teng ravishda ishlaydi if-elseif-elseif-elseif-else, # if-function tuzilmasi "elseif" bandiga ega bo'lolmasa ham. Taqqoslangan ma'lumotlarning 2 turiga e'tibor bering:
- Alfavit ma'lumotlari: Alfa belgilar qatorini
# almashtirish
yordamida#ifeq:
quyidagicha: {{#ifeq: {{{x2 | none}}} | none | 1 | 0}},
bu erda natija rost bo'lsa "1" yoki noto'g'ri bo'lsa "0" bo'ladi. - Raqamli ma'lumotlar: Ba'zi raqamlarni solishtirish mumkin
# almashtirish
yordamida#expr:
quyidagicha: {{#expr: {{{y2}}} = 0}} yoki {{#expr: {{{x}}} <41500}},
bu erda har bir natija rost bo'lganda "1" yoki noto'g'ri bo'lsa "0" bo'ladi.
Yana bir misol, o'nli raqamlar sonini aniqlash uchun "n" miqdorini sinash uchun:
{{# almashtirish: 1
| {{#expr: qavat ({{{n}}} * 100) <> {{{n}}} * 100}} = 3
| {{#expr: qavat ({{{n}}} * 10) <> {{{n}}} * 10}} = 2
| {{#expr: pol ({{{n}}}) <> {{{n n}}}}} = 1
| {{#expr: {{{n}}} mod 1000 = 0}} = -3
| {{#expr: {{{n}}} mod 100 = 0}} = -2
| {{#expr: {{{n}}} mod 10 = 0}} = -1
| 1 = 0
}}
Bu yana bir misol, "#switch: 1" yordamida sinovdan o'tgan dastlabki shartlar to'plamini ketma-ketlikda bitta haqiqiy ("1" ga teng) bo'lguncha.
Ishlash masalalari
#Switch 1000-2000 dan ortiq shoxchani o'z ichiga olishi mumkin, lekin 100 dan kam shoxga bo'linib, bir nechta yoki ichki qismlarga bo'linishi kerak. Ba'zi hollarda, bir nechta #switch tuzilmalariga bo'linish mumkin, masalan, ko'p hollarda bir xil birinchi harf ishlatilganda. Keyin {{padleft: | 1 | {{{value}}}}} dan foydalanib, {{{value}}} ning birinchi harfi yuqori #switch-da ishlatilishi mumkin, u eng tez-tez uchraydigan harflar bilan shoxlanadi. pastki qismidagi barcha boshqalar yoki "#default" filiali. Raqamli qiymatlarni tez-tez diapazonlarga ajratish, keyin esa boshqalarni ajratish yana bir keng tarqalgan bo'linish bo'lishi mumkin.
#Switch-ning yuqori tarmoqlari tezroq ishlaydi, pastki shoxlari esa barcha yuqori tarmoqlarning taqqoslanishini kutishi kerak. Demak, dastlabki filiallarda ma'lumotlarni oldindan tekshirish amalga oshirilmasa, yuqori tarmoq eng ko'p ishlatiladigan holat bo'lishi kerak.
Shuningdek qarang
- Vikipediya: Parser funktsiyasi
- Yordam: Shartli iboralar
- Relyatsion operator
- Yordam: Magic_words # o'zgaruvchilar
- ^ A shablon qo'ng'iroq (shuningdek, nomi bilan tanilgan shablon yorlig'i) shablon sahifa nomining ikkala tomonida ikkita "qavs" mavjud va "Andoza:" prefiksini o'z ichiga olmaydi. Modulda Lua xatosi: 111-satrdagi Template_link_general: mahalliy 'titlePart' (nol qiymat) ni birlashtirishga urinish. ham ishlaydi, lekin "Andoza:" shart emas. Natijada "
{{...}}
".