Remove Multiple New Lines with JavaScript
I'm blessed in that lots of people want to guest post on this blog. It's really flattering and I love seeing writers get a bunch of attention after writing. My task is converting the blog post, in whatever format it's provided in (HTML, Markdown, PDF, Google Doc, etc.), to HTML for my blog, which can sometimes get messy. I employ a host of regular expressions to fix these formatting issues. And the number one problem? Loads of extra new lines (\n).
The Regular Expression
The regular expression is actually quite simple:
content.replace(/[\r\n]+/g, '\n'); // Just one new line
content.replace(/[\r\n]+/g, '\n\n'); // "document" formatting, more elegant
With the dozens of extra lines gone it's much easier to work with the content!
![CSS Filters]()
CSS filter support recently landed within WebKit nightlies. CSS filters provide a method for modifying the rendering of a basic DOM element, image, or video. CSS filters allow for blurring, warping, and modifying the color intensity of elements. Let's have...
![Create Namespaced Classes with MooTools]()
MooTools has always gotten a bit of grief for not inherently using and standardizing namespaced-based JavaScript classes like the Dojo Toolkit does. Many developers create their classes as globals which is generally frowned up. I mostly disagree with that stance, but each to their own. In any event...
![RealTime Stock Quotes with MooTools Request.Stocks and YQL]()
It goes without saying but MooTools' inheritance pattern allows for creation of small, simple classes that possess immense power. One example of that power is a class that inherits from Request, Request.JSON, and Request.JSONP: Request.Stocks. Created by Enrique Erne, this great MooTools class acts as...
![Web Notifications API]()
Every UI framework has the same set of widgets which have become almost essential to modern sites: modals, tooltips, button varieties, and notifications. One problem I find is each site having their own widget colors, styles, and more -- users don't get a consistent experience. Apparently the...
David,
I’m more inclined to use something like:
Only there always seems to be some extra whitespace between those newlines. If you don’t want to loose the tabs on the next line then this works just as well