News for hackers. Stuff that matters.
Re:Randall Munroe's (from xkcd) newest idea by bazzargh on Sunday November 10, 2013 @11:36AM (#6707135)
Someone posted similar js when this xkcd was discussed yesterday (https://news.ycombinator.com/item?id=6696355), but also missed that js lets you grab nodesets using xpaths directly:

  var snap = document.evaluate('//text()', 
    document, null, XPathResult.ORDERED_NODE_SNAPSHOT_TYPE,
    null);
  for (var i=0;i<snap.snapshotLength; i++) {
    t=snap.snapshotItem(i);
    t.textContent = replace(t.textContent);
  }

In addition your code uses \s\s* when you just mean \s+; also you are using case-insensitive matches for the 'dictRegex' pattern with case-sensitive matches for the individual patterns, so you replace eg 'election' (lower case e) with 'undefined'.

Like the other js implementation you're not matching word boundaries (\b).

Re:Randall Munroe's (from xkcd) newest idea by rbmoshe on Sunday November 10, 2013 @01:32PM (#6707768)
Thanks for the ignoreCase problem, I fixed it. I actually was using a \b in the link but forgot to update the source accordingly. The reason I use \s\s* over \s+ is because I once saw that it has some performance benefits, although it really doesn't make a difference