User:Eurodyne/AutoEd/unnamed.js

From Wikipedia, the free encyclopedia
Note: After saving, you have to bypass your browser's cache to see the changes. Google Chrome, Firefox, Microsoft Edge and Safari: Hold down the ⇧ Shift key and click the Reload toolbar button. For details and instructions about other browsers, see Wikipedia:Bypass your cache.
//<source lang=javascript>
var AutoEd_baseurl = 'http://en.wikipedia.org/w/index.php?action=raw&ctype=text/javascript&title=User:Jonesey95/AutoEd/';
if (location.protocol === 'https:') {
  AutoEd_baseurl = 'https://en.wikipedia.org/w/index.php?action=raw&ctype=text/javascript&title=User:Jonesey95/AutoEd/';
}
 
mw.loader.load(AutoEd_baseurl + 'core4.js'); //Imports the "framework" script needed to make this function

//Sets variable configuration
autoEdTag4 = "Fixing empty citation, [[Category:Pages with citations using unnamed parameters|unnamed]] or [[Category:Pages with citations using unsupported parameters|unsupported]] parameter error using [[WP:AutoEd|AutoEd]]"; //Tweaks edit summary
autoEdLinkName4 = "AutoEd unnamed"; //Changes the link name at the top of the page
autoEdLinkHover4 = "Run AutoEd to fix unnamed parameter"; //When user hovers over link
 
//Set up function
function ReplaceUnnamed(str) { //function to replace unnamed and unsupported parameters
 
  //Remove |p 
  // str = str.replace(/\|p \|/g, '\|');
  //Add url=
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*=*(http)/gi, '$1\|url=$2'); 
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))(\|\s*url\s*)\|*(http)/gi, '$1$2=$3');
  str = str.replace(/cite url\s*\|\s*web=/gi, 'cite web\| url=');  
  //Replace |http with |url=http in citations
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*http/g, '$1\|url=http');  
  
  //Delete extraneous Japanese word "book" 
  str = str.replace(/{{\s*[Cc]ite book\|\s*\u548c\u66f8/g, '{{cite book'); 
  
  //Replace isbn10 followed by isbn
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*is[nb]+10\s*=\s*[\d-X]+\s*(\|\s*isbn\s*=\s*[\d-]+\s*[\}\|])/gi, '$1$2');

  //Fix param followed by hyphen or colon
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))(\|\s*access-*date)[\+\-\:]/gi, '$1$2=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))(\|\s*archive-*date)[\+\-\:]/gi, '$1$2=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))(\|\s*archive-*url)[\+\-\:]/gi, '$1$2=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))(\|\s*asin)[\+\-\:]/gi, '$1$2=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))(\|\s*author\d*)[\+\-\:](\s*[a-kn-z])/gi, '$1$2=$3');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))(\|\s*date)[\+\-\:]/gi, '$1$2=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))(\|\s*doi)[\+\-\:]/gi, '$1$2=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))(\|\s*edition)[\+\-\:]/gi, '$1$2=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))(\|\s*first\d*)[\+\-\:]/gi, '$1$2=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))(\|\s*isbn\d*)[\+\-\:]/gi, '$1$2=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))(\|\s*last\d*)[\+\-\:]([\sb-z]+)/gi, '$1$2=$3');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))(\|\s*language\d*)[\+\-\:]/gi, '$1$2=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))(\|\s*page\d*)[\+\-\:]/gi, '$1$2=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))(\|\s*pages\d*)[\+\-\:]/gi, '$1$2=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))(\|\s*pmid)[\+\-\:]/gi, '$1$2=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))(\|\s*publisher)[\+\-\:]/gi, '$1$2=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))(\|\s*title)[\+\-\:]/gi, '$1$2=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))(\|\s*type)[\+\-\:]/gi, '$1$2=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))(\|\s*url)[\+\-\:]/gi, '$1$2=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))(\|\s*volume\d*)[\+\-\:]/gi, '$1$2=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))(\|\s*work)[\+\-\:]/gi, '$1$2='); 
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))(\|\s*year)[\+\-\:]/gi, '$1$2='); 
   
  //Fix other common param errors
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*a+c+e+d+a+t+e\s*=/gi, '$1\|access\-date=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*aa+c+e+s+d+a+t+e\s*=/gi, '$1\|access\-date=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*a+c+e+s+-*d+s+a+t+e\s*=/gi, '$1\|access\-date=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*accc+e+ss+-*d+a+t+e\s*=/gi, '$1\|access\-date=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*ac+ee+ss+-*d+a+t+e\s*=/gi, '$1\|access\-date=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*ac+e+ss+-*d+a+e\s*=/gi, '$1\|access\-date=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*ac+e+s-*d+a+t+e\s*=/gi, '$1\|access\-date=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*ac+e+ss+-*d+a+t+\s*=/gi, '$1\|access\-date=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*ac+e+s+-*[a-rt-z _]+-*d+at+e\s*=/gi, '$1\|access\-date=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*ac+e+s+-*at+e\s*=/gi, '$1\|access\-date=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*ac+e+s+-*da+re\s*=/gi, '$1\|access\-date=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*ac+e+s+-*d+a+t+a\s*=/gi, '$1\|access\-date=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*Ac+e+s+-*d+at+e\s*=/g, '$1\|access\-date=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*ac+e+s+-*d+at+ee+\s*=/gi, '$1\|access\-date=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*ac+e+s+-*d+att+e\s*=/gi, '$1\|access\-date=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*ac+e+s+-*d[a-z]+a+t+e\s*=/gi, '$1\|access\-date=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*ac+e+s+-*d+t+a*e\s*=/gi, '$1\|access\-date=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*accessed\s*=/gi, '$1\|access\-date=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*ac+e+s+e+-*d+at+e\s*=/gi, '$1\|access\-date=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*ac+e+sss+-*d+at+e\s*=/gi, '$1\|access\-date=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*ac+s+[a-z]*-*d+at+e\s*=/gi, '$1\|access\-date=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*ace+s+-*d+a+t+e+\s*=/gi, '$1\|access\-date=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*address\s*=/gi, '$1\|location=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*air date\s*=/gi, '$1\|air-date=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*albumlink\s*=/gi, '$1\|title-link=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*Archivedate\s*=/g, '$1\|archive\-date=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*achive *date\s*=/gi, '$1\|archive\-date=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*archive[ oe_]+date\s*=/gi, '$1\|archive\-date=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*archiveate\s*=/gi, '$1\|archive\-date=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*archvi*edate\s*=/gi, '$1\|archive\-date=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*archive[ oe_]+url\s*=/gi, '$1\|archive\-url=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*archiv[ o_]*url\s*=/gi, '$1\|archive\-url=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*archieurl\s*=/gi, '$1\|archive\-url=');
  //comment "artist"; too many false positives from "template:cite certification"
  //str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*artist\s*=/gi, '$1\|others=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*auhor\s*=/gi, '$1\|author=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*auhtor\s*=/gi, '$1\|author=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*auther\s*=/gi, '$1\|author=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*Authors*\s*=/g, '$1\|author=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*a+u+tt+h+o+r+\s*=/gi, '$1\|author=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*a+u+t+h+o+[a-z]+r+\s*=/gi, '$1\|author=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*author[ _]+link\s*=/gi, '$1\|author\-link=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*Author-*link\s*=/g, '$1\|author\-link=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*c+a+r+o+g+r+a+p+h+y+\s*=/gi, '$1\|cartography=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*c+a+r+t+[a-np-z]+o+g+r+a+p+h+[ery]*\s*=/gi, '$1\|cartography=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*c+a+r+t+o+g+r+a+[a-oq-z]+p+h*[ery]*\s*=/gi, '$1\|cartography=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*c+a+r+t+o+g+r+a+p+h+e+r+\s*=/gi, '$1\|cartography=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*channel\s*=/gi, '$1\|network='); 
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*Chapter\s*=/g, '$1\|chapter=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*dare*\s*=/gi, '$1\|date=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*dat[a-df-z]*\s*=/gi, '$1\|date=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*dead\s*=/gi, '$1\|dead\-url=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*deadlink\s*=/gi, '$1\|dead\-url=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*dead[ a-z]+url\s*=/gi, '$1\|dead\-url=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*dtae\s*=/gi, '$1\|date=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*dte\s*=/gi, '$1\|date=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*date *accessed\s*=/gi, '$1\|access\-date=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*date *published\s*=/gi, '$1\|publication-date=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*date *retrieved\s*=/gi, '$1\|access\-date=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*Date\s*=/g, '$1\|date=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*distributor\s*=/gi, '$1\|publisher='); 
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*Edition\s*=/g, '$1\|edition=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*Editors*\s*=/g, '$1\|editor=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*Editor(\d)\s*=/g, '$1\|editor$2=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*editoi*n\s*=/gi, '$1\|edition=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*episode link\s*=/gi, '$1\|episode-link=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*eprint=\s*\d+\.\d+\s*\|\s*/gi, '$1\|');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*Format\s*=/g, '$1\|format=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*foramt\s*=/gi, '$1\|format='); 
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*F[ir]+[st](\d)*\s*=/gi, '$1\|first$2=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*First(\d*)\s*=/g, '$1\|first$2=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*fisr*t(\d)*\s*=/gi, '$1\|first$2=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*frist*\s*=/gi, '$1\|first=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*frist*(\d)+\s*=/gi, '$1\|first$2=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*first (\d)+\s*=/gi, '$1\|first$2=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*first\s*name\s*=/gi, '$1\|first=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*firstl\s*=/gi, '$1\|first=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*ibsn\s*=/gi, '$1\|isbn=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*isnb[13]*\s*=/gi, '$1\|isbn=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*isbn10\s*=/gi, '$1\|isbn=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*Issue\s*=/g, '$1\|issue=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*Journal\s*=/g, '$1\|journal=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*jorunal\s*=/g, '$1\|journal=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*lang\s*=/gi, '$1\|language='); 
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*l+a+n+gg+u+a+g+e+\s*=/gi, '$1\|language='); 
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*loation\s*=/gi, '$1\|location='); 
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*locaton\s*=/gi, '$1\|location='); 
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*lan*g*a*uge\s*=/gi, '$1\|language='); 
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*la[ng]uage\s*=/gi, '$1\|language='); 
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*Language\s*=/g, '$1\|language='); 
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*lastl\s*=/gi, '$1\|last=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*Last(\d*)\s*=/g, '$1\|last$2=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*last (\d)+\s*=/gi, '$1\|last$2=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*last\s*name\s*=/gi, '$1\|last=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*l+o+c+a+t+i+o+nn+\s*=/gi, '$1\|location='); 
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*Location\s*=/g, '$1\|location='); 
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*loaction\s*=/gi, '$1\|location=');    
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*locatoin\s*=/gi, '$1\|location=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*lsat(\d*)\s*=/gi, '$1\|last$2=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*msg-id\s*=/gi, '$1\|message-id=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*mailing list\s*=/gi, '$1\|mailing-list=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*maill+inglist\s*=/gi, '$1\|mailing-list=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*Network\s*=/g, '$1\|network='); 
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*netwrok\s*=/gi, '$1\|network='); 
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*newgroups*\s*=/gi, '$1\|newsgroup=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*ne[ws]paper\s*=/gi, '$1\|newspaper=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*news[a-z \-_]+paper\s*=/gi, '$1\|newspaper=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*news\s*=/gi, '$1\|newspaper=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*newsgroups\s*=/gi, '$1\|newsgroup=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*Newspaper\s*=/g, '$1\|newspaper=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*Number\s*=/g, '$1\|number=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*origdate\s*=/gi, '$1\|orig-year=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*other\s*=/gi, '$1\|others=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*pagees\s*=/gi, '$1\|pages=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*Page\s*=/g, '$1\|page=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*Pages\s*=/g, '$1\|pages=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*Place\s*=/g, '$1\|place=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*pmcid\s*=/g, '$1\|pmc=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*ps\s*=/gi, '$1\|postscript=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*pub\s*=/gi, '$1\|publisher=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*p+u+b+l+i+s+h+e+r+[a-z]+\s*=/gi, '$1\|publisher=');  
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*p+u+[a-z]+b+l+i+s+h+e+r+[a-z]*\s*=/gi, '$1\|publisher='); 
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*[a-oq-z\d]+p+u+b+l+i+s+h+e+r+\s*=/gi, '$1\|publisher=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*p+u+b+[a-z]*l+i+[a-rt-z]*h+s*e+r+\s*=/gi, '$1\|publisher=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*p+u+b+[a-km-z;]*i+s+h+e+r+\s*=/gi, '$1\|publisher=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*p+u+b+i+l+s+h+e+r+\s*=/gi, '$1\|publisher=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*p+u+b+l+i+s+e+h*r+\s*=/gi, '$1\|publisher=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*p+u+b+l+i+s+h+e+rr+\s*=/gi, '$1\|publisher=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*p+u+b+l+i+s+[a-z]+h+e+r+\s*=/gi, '$1\|publisher=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*p+u+b+l+i+s+[a-z]*h+r+\s*=/gi, '$1\|publisher=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*p+u+b+l+i+[a-z]+s+h+e+r+\s*=/gi, '$1\|publisher=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*publis[a-gi-z]*er[a-z\d]*\s*=/gi, '$1\|publisher=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*publisher[a-z\d]+\s*=/gi, '$1\|publisher=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*publishe\s*=/gi, '$1\|publisher=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*p+u+b+l+i+s+h+i+e+r+\s*=/gi, '$1\|publisher=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*p+u+b+l+[a-hj-z]*s+h+e+r+\s*=/gi, '$1\|publisher=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*p+u+b+l+s+i+[a-z]+h+e+r+\s*=/gi, '$1\|publisher=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*p+[a-z]+u+b+l+i+s+h+e+r+\s*=/gi, '$1\|publisher=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*Publisher\s*=/g, '$1\|publisher=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*p+u+l+b+i+s+h+e+r+\s*=/gi, '$1\|publisher=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*pulbication-place\s*=/gi, '$1\|publication-place=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*p+u+[ac-z]*l+i+s+h+e+r+\s*=/gi, '$1\|publisher=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*Quote\s*=/g, '$1\|quote=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*Ref\s*=/g, '$1\|ref=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*retrieved\s*=/gi, '$1\|access\-date=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*scal\s*=/gi, '$1\|scale=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*ss+c+a+l+e*\s*=/gi, '$1\|scale=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*Season\s*=/g, '$1\|season=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*Series\s*=/g, '$1\|series=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*series link\s*=/gi, '$1\|series-link=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*service\s*=/gi, '$1\|agency=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*Station\s*=/g, '$1\|station='); 
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*t+i+[a-su-z]*l+e\s*=/gi, '$1\|title=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*t+i+t+[el]\s*=/gi, '$1\|title=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*t+i+t+e+l+\s*=/gi, '$1\|title=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*t+i+t[a-z]l+e+\s*=/gi, '$1\|title=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*t+[a-hj-z]+t+l+e+\s*=/gi, '$1\|title=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*Title\s*=/g, '$1\|title=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*title[ -_]*trans\s*=/gi, '$1\|trans-title='); 
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*trans *chapter\s*=/gi, '$1\|trans-chapter=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*trans *title\s*=/gi, '$1\|trans-title='); 
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*translator\s*=/gi, '$1\|others=Translated by ');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*Type\s*=/g, '$1\|type=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*ublisher\s*=/gi, '$1\|publisher='); 
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*ulr\s*=/gi, '$1\|url='); 
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*ur[a-kmz\d]*\s*=/gi, '$1\|url='); 
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*urlmap\s*=/gi, '$1\|map-url='); 
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*u[a-qs-z]l\s*=/gi, '$1\|url=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*Url\s*=/g, '$1\|url='); 
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*vol\s*=/gi, '$1\|volume='); 
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*Volume\s*=/g, '$1\|volume='); 
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*web si*te\s*=/gi, '$1\|website='); 
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*Website\s*=/g, '$1\|website='); 
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*webste\s*=/gi, '$1\|website='); 
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*wokr\s*=/gi, '$1\|work='); 
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*work[a-z]+\s*=/gi, '$1\|work=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*Work\s*=/g, '$1\|work='); 
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*Year\s*=/g, '$1\|year='); 
  
 //Spanish and Italian and Portuguese
  str = str.replace(/(\{\{[Cc]it)ar*( web\s*\|)/g, '$1e$2');
  str = str.replace(/(\{\{[Cc]it)a( noticia\s*\|)/g, '$1e news\|');
  str = str.replace(/(\{\{[Cc]it)a( news\s*\|)/g, '$1e news\|');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*acessodata\s*=/g, '$1\|access-date=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*a[ñn]+o\s*=/g, '$1\|year=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*añoacceso\s*=/g, '$1\|access-date=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*annooriginale\s*=/g, '$1\|orig-year=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*apellido\s*=/g, '$1\|last=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*archive url\s*=/g, '$1\|archive-url=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*autor(\d)\s*=/g, '$1\|author$2=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*autore*\s*=/g, '$1\|author=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*cita\s*=/g, '$1\|quote=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*citazione\s*=/g, '$1\|quote=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*città\s*=/g, '$1\|location=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*coautor[eis]+\s*=/g, '$1\|coauthors=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*cognome\s*=/g, '$1\|last=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*curatore\s*=/g, '$1\|editor=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*data\s*=/g, '$1\|date=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*[dat]*accesso\s*=/g, '$1\|access-date=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*dataarchivio\s*=/g, '$1\|archive-date=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*editor[ie]\s*=/g, '$1\|publisher=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*editorial\s*=/g, '$1\|publisher=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*edizione*\s*=/g, '$1\|edition=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*enlaceautor\s*=/g, '$1\|author-link=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*fecha\s*=/g, '$1\|date=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*fecha+c+es+o\s*=/g, '$1\|access-date=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*fechaarchivo\s*=/g, '$1\|archive-date=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*formato\s*=/g, '$1\|format=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*giornale\s*=/g, '$1\|journal=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*idioma\s*=/g, '$1\|language=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*l[ií]ngua\s*=/g, '$1\|language=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*mese*\s*=/g, '$1\|month=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*n[uú]mero*\s*=/g, '$1\|issue=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*nom[br]*e\s*=/g, '$1\|first=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*o[bep]+ra\s*=/g, '$1\|work=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*p[áa]gina\s*=/g, '$1\|page=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*p[áa]ginas\s*=/g, '$1\|pages=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*p[áa]gine\s*=/g, '$1\|pages=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*peri[óo]dico\s*=/g, '$1\|journal=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*primero\s*=/g, '$1\|first=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*pub+lica[cz]i[óo]ne*\s*=/g, '$1\|journal=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*publicado\s*=/g, '$1\|publisher=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*publicação\s*=/g, '$1\|publisher=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*seri[ae]*\s*=/g, '$1\|series=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*suscripción\s*=/g, '$1\|subscription=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*tipo*\s*=/g, '$1\|type=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*tit[uo]lo\s*=/g, '$1\| title=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*título\s*=/g, '$1\|title=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*trabalho\s*=/g, '$1\|work=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*ubicación\s*=/g, '$1\|location=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*último\s*=/g, '$1\|last=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*urlarchivi*o\s*=/g, '$1\|archive-url=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*urlmorto\s*=/g, '$1\|dead-url=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*volumen\s*=/g, '$1\|volume=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*wkautore\s*=/g, '$1\|author-link=');
 
 //French
  str = str.replace(/(\{\{)\s*Lien\s*brisé(\s*\|)/gi, '$1cite web$2');
  str = str.replace(/(\{\{)\s*Lien\s*web(\s*\|)/gi, '$1cite web$2');
  str = str.replace(/(\{\{)\s*Article(\s*\|)/gi, '$1cite journal$2');
  str = str.replace(/(\{\{)\s*Ouvrage(\s*\|)/gi, '$1citation$2');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*auteur\s*=/g, '$1\|author=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*série\s*=/g, '$1\|work=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*année\s*=/g, '$1\|year=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*consulté le\s*=/g, '$1\|access-date=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*éditeur\s*=/g, '$1\|editor=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*en ligne le\s*=/g, '$1\|archive-date=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*lieu\s*=/g, '$1\|location=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*lire en ligne\s*=/g, '$1\|url=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*mois\s*=/g, '$1\|month=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*nom\s*=/g, '$1\|last=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*nom(\d)\s*=/g, '$1\|last$2=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*numéro\s*=/g, '$1\|number=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*pages totales\s*=\s*\d+\s*/g, '$1');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*passage\s*=/g, '$1\|pages=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*périodique\s*=/g, '$1\|publisher=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*prénom\s*=/g, '$1\|first=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*prénom(\d)\s*=/g, '$1\|first$2=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*site\s*=/g, '$1\|work=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*langue\s*=/g, '$1\|language=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*titre\s*=/g, '$1\|title=');
 
//Swedish, I think
  str = str.replace(/(\{\{)\s*bokref(\s*\|)/gi, '$1citation$2');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*titel\s*=/gi, '$1\|title=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*förnamn\s*=/gi, '$1\|first=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*författare\s*=/gi, '$1\|author=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*efternamn\s*=/gi, '$1\|last=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*utgivare\s*=/gi, '$1\|publisher=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*utgivningsort\s*=/gi, '$1\|location=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*sid\s*=/gi, '$1\|page=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*sidor\s*=/gi, '$1\|pages=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*år\s*=/gi, '$1\|year=');
  
//Finnish, I think
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*Osoite\s*=/gi, '$1\|url=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*Tekijä\s*=/gi, '$1\|author=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*Ajankohta\s*=/gi, '$1\|date=');
  
//Russian
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*автор\s*=/gi, '$1\|author=');
 
//German
  str = str.replace(/({{\s*Literatur(?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*Autor\s*=/gi, '$1\|author='); 
  str = str.replace(/({{\s*Literatur(?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*Titel\s*=/gi, '$1\|title='); 
  str = str.replace(/({{\s*Literatur(?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*Verlag\s*=/gi, '$1\|publisher='); 
  str = str.replace(/({{\s*Literatur(?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*Ort\s*=/gi, '$1\|location='); 
  str = str.replace(/({{\s*Literatur(?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*Jahr\s*=/gi, '$1\|year='); 
  str = str.replace(/({{\s*Literatur(?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*Band\s*=/gi, '$1\|volume='); 
  str = str.replace(/({{\s*Literatur(?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*Nummer\s*=/gi, '$1\|number='); 
  str = str.replace(/({{\s*Literatur(?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*Monat\s*=/gi, '$1\|month='); 
  str = str.replace(/({{\s*Literatur(?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*Seiten\s*=/gi, '$1\|pages='); 
  str = str.replace(/({{\s*Literatur(?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*Online\s*=/gi, '$1\|url='); 
  str = str.replace(/({{\s*Literatur(?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*Herausgeber\s*=/gi, '$1\|editor='); 
  str = str.replace(/({{\s*Literatur(?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*Übersetzer\s*=/gi, '$1\|others=Translated by '); 
  str = str.replace(/({{\s*Literatur(?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*Sammelwerk\s*=/gi, '$1\|work=');
  str = str.replace(/({{\s*Literatur(?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*Zugriff\s*=/gi, '$1\|access-date=');
  str = str.replace(/({{\s*Literatur(?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*Kapitel\s*=/gi, '$1\|chapter=');
  str = str.replace(/(\{\{)\s*Literatur(\s*\|)/gi, '$1citation$2');
  
  //Turkish
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*yayımcı\s*=/gi, '$1\|publisher=');
 
  //Vietnamese
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*ngôn ngữ\s*=/gi, '$1\|language=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*nhà xuất bản\s*=/gi, '$1\|publisher=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*ngày truy cập\s*=/gi, '$1\|access-date=');
  str = str.replace(/({{\s*[cC]it[ea](?:[^}{]*(?:\{\{[^}{]*}}[^}{]*)*))\|\s*ngày\s*=/gi, '$1\|date=');
 
  return str;
}
 
function autoEdFunctions4() { //Activates individual modules when "auto ed" tab is clicked
    var txt = document.editform.wpTextbox1;
    txt.value = ReplaceUnnamed(txt.value);
//    txt.value = autoEdWhitespace(txt.value);
}
 
//</source>