Uno dei più interessanti "linguaggi di programmazione" con cui sono stato bloccato ultimamente sono i modelli MediaWiki. Puoi fare una quantità sorprendente di cose con la sintassi limitata che ti danno, ma recentemente mi sono imbattuto in un problema che mi ha bloccato: usando le funzioni di stringa sugli argomenti del template. Quello che mi piacerebbe fare (un po 'semplificata) è:Funzioni stringa nel modello MediaWiki?
{{myTemp|a=1,2,3,4}}
quindi scrivere un modello che può fare una sorta di magia come
You told me _a_ starts with {{#split:{{{a}}}, ",", 0}}
Allo stato attuale, posso farlo con JavaScript incorporato, catturare la corrispondenza delle espressioni regolari, e document.write, ma a) è enorme, b) è hacky, e c) si romperà orribilmente se qualcuno disattiva javascript. (Si noti che "split" è solo un esempio, concatenare, corrispondenza cattura-regexp, ecc, sarebbe ancora meglio)
mi rendo conto che la soluzione giusta è quello di avere il chiamante invoca il modello con argomenti separati, ma per vari motivi che sarebbero difficili nel mio caso particolare. Se semplicemente non è possibile, credo che sia la risposta, ma se il numero è un modo per avere i modelli di manipolazione delle stringhe sul back-end, sarebbe fantastico.
vuoi accettare una delle risposte e fare un up-voting? – Wikis
Entrambe le buone risposte, ma ho scelto relet in particolare perché stavo cercando supporto per regexp – Coderer