Was bei mir sehr gut funktioniert:
// Wikisyntax-Aufzählungszeichen durch Leerzeichen vom Inhalt abtrennen
["(\n[*#:;]+)([^\n *#:;])",
"$1 $2"],
["\n(:+) +\\{\\|",
"\n$1{|"],
// Seite ohne Punkt
["[,] S ([1-9])",
", S. $1"],
//* Leerzeichen zwischen Tag und Monat
var Deutsch_Monat =
"(Januar|Jänner|Februar|März|April|Mai|Juni|Juli|August|September|Oktober|November|Dezember)";
["(0?([1-9])|([12][0-9]|3[01]))\\.(" + Deutsch_Monat + ")",
"$2$3. $4"],
//* Leerzeichen zwischen Zahl und Jahrhundert
["(([1-9])|([12][0-9]))\\.Jahrhundert",
"$1. Jahrhundert"],
// Strich vor ISBN entfernen
var Striche = String.fromCharCode(45,173,8208,8209,8210,8211,8212,8213,8722);
[" [" + Striche + "] ?ISBN ([-0-9X]+)",
" ISBN $1"],
// , S. 2
[" , S[.] ([0-9])",
", S. $1"],
// Komma vor ISBN
["(?:\\.|;) ISBN ([0-9])",
", ISBN $1"],
["([a-zA-Z0-9]) ISBN ([02-9]|1[^03]|1[03][-0-9])",
"$1, ISBN $2"],
["( und),( ISBN [0-9])",
"$1$2"],
// geklammerte Jahreszahl vor ISBN
["\\(([12][0-9][0-9][0-9])\\),? ISBN ",
"$1, ISBN "],
// Normierung der Seitenangaben von bis
var Striche = String.fromCharCode(45,173,8208,8209,8210,8211,8212,8213,8722);
[" ((?:Sp?|Nr)\\.( | ))([1-9]([0-9]|, |; |–| und )*)( | )?([" + Striche + "]|bis)( | )?([1-9][0-9]*)",
" $1$3–$8"],
[" ((?:Sp?|Nr)\\.( | ))([1-9]([0-9]|, |; |–| und )*)( | )?([" + Striche + "]|bis)( | )?([1-9][0-9]*)",
" $1$3–$8"],
[" ((?:Sp?|Nr)\\.( | ))([1-9]([0-9]|, |; |–| und )*)( | )?([" + Striche + "]|bis)( | )?([1-9][0-9]*)",
" $1$3–$8"],
[" ((?:Sp?|Nr)\\.( | ))([IVXLCDM]([IVXLCDM]|, |; |–| und )*)( | )?([" + Striche + "]|bis)( | )?([IVXLCDM][IVXLCDM]*)",
" $1$3–$8"],
[" ((?:Sp?|Nr)\\.( | ))([IVXLCDM]([IVXLCDM]|, |; |–| und )*)( | )?([" + Striche + "]|bis)( | )?([IVXLCDM][IVXLCDM]*)",
" $1$3–$8"],
[" ((?:Sp?|Nr)\\.( | ))([IVXLCDM]([IVXLCDM]|, |; |–| und )*)( | )?([" + Striche + "]|bis)( | )?([IVXLCDM][IVXLCDM]*)",
" $1$3–$8"],
[" (S\\.(?: | ))([A-Za-z])([0-9]+)(?: | )*(?:[" + Striche + "]|bis)(?: | )*[A-Za-z]?([0-9]+)",
" $1$2$3–$2$4"],
// Seitenangaben hinter ISBN verschieben
var Striche = String.fromCharCode(45,173,8208,8209,8210,8211,8212,8213,8722);
["((?:\n[*]+|<ref)[^:\n]+: ''[^\n]+)[,.;]?''[,.;]? ?(Sp?\\.(?: | | )?[1-9][0-9]*(?:(?: | | )?ff?\\.?)?(?:(?:[;,] |[,;] ?Sp?\\. ?| und | u\\. ?| ?[" + Striche + "] ?| bis |[,;] Fußnote |/)[1-9][0-9]*(?: | | )?f?f?)*)[.,;] ([^\n<]+, ISBN [-0-9X]+)",
"$1.'' $3, $2"],
["[,.;] ?(Sp?[.:](?: | | )?[1-9][0-9]*(?:(?: | | )?ff?\\.?)?(?:(?:[,;] |[,;] ?Sp?[:.] ?| und | u\\. ?| ?[" + Striche + "] ?| bis |[,;] Fußnote |/)[1-9][0-9]*(?:(?: | | )?f?f)?)*)[.,;] (ISBN [-0-9X]+)",
", $2, $1"],
// geklammerte Seitenzahl nach ISBN
[" ISBN ([-0-9X]+)[,]? \\(S. ([0-9][^) ,;.]+)\\)",
" ISBN $1, S. $2"],
// Komma zwischen ISBN und Seitenangabe
["ISBN *([-0-9X]+)[.;:]? *S(\\.|eiten?) ([1-9])",
"ISBN $1, S. $3"],
// 10- und 13-stellige isbn
["( 19[6-9][0-9]| 200[0-6]),? *(\\(?:.+\\),? *)?(ISBN [^9][-0-9]{8,14}-[0-9X])[,;]?(?: und| oder)? (ISBN )?(97[89][-0-9]{10,15})([.,; \n<)]|\\])",
"$1, $2$3$6"],
["( 20(?:0[7-9]|[1-9][0-9])),? *(\\(.+\\),? *)?(ISBN [^9][-0-9]{8,14}-[0-9X])[,;]?(?: und| oder)? (ISBN )?(97[89][-0-9]{10,15})([.,; \n<)]|\\])",
"$1, $2ISBN $5$6"],
["( 19[6-9][0-9]| 200[0-6]),? *(\\(?:.+\\),? *)?(ISBN 97[89][-0-9]{9,15})[,;]?(?: und| oder)? (ISBN )?([^9][-0-9]{8,14}-[0-9X])([.,; \n<)]|\\])",
"$1, $2ISBN $5$6"],
["( 20(?:0[7-9]|[1-9][0-9])),? *(\\(.+\\),? *)?(ISBN 97[89][-0-9]{9,15})[,;]?(?: und| oder)? (ISBN )?([^9][-0-9]{8,14}-[0-9X])([.,; \n<)]|\\])",
"$1, $2$3$6"],
// Steht im Text sowohl vor als auch nach der Referenz ein Satzzeichen,
// wird das führende belassen und das nachfolgende entfernt:
["([.,;:!?])(<ref(?:[^<\n]+)</ref>|<ref(?:(?: name=| group=)\"[^/\n<>\"]+\")+(?:>| />))([.,;:!?])",
"$1$2"],
// Verschieben des Satzzeichens vom ref-Ende vor die ref-Anweisung
["([^.,;:!?])(<ref(?:[^<\n]+)</ref>|<ref(?:(?: name=| group=)\"[^/\n<>\"]+\")+(?:>| />))([.,;:!?])",
"$1$3$2"],
//* Normierung Quadrat/Kubik(kilo/dezi/zenti/milli)meter
["([/0-9])( | | |/)*([Kkcdm]?m)2([- .,;/)\n])",
"$1$2$3²$4"],
["([/0-9])( | | |/)*([Kkcdm]?m)3([- .,;/)\n])",
"$1$2$3³$4"],
["\\(Englisch\\)",
"(englisch)"],
["\\(Französisch\\)",
"(französisch)"],
// Verlage
["([- ])(?:Vlg|Verl)\\.([- ,;])",
"$1Verlag$2"],
["([a-z])(?:vlg|verl)\\.([- ,;])",
"$1verlag$2"],
[" Urban&FischerVerlag",
" Urban & Fischer-Verlag"],
[" (Urban(?:&| und | u\\. )Fischer)",
" Urban & Fischer"],
[" C. ?H. ?Beck",
" C.H. Beck"],
[" Königshausen( und | u\\. |&)Neumann",
" Königshausen & Neumann"],
[" Vandenhoeck( und | u\\. |&)Ruprecht",
" Vandenhoeck & Ruprecht"],