Regex to Replace Multiple Blank Lines with One

by Pete Freitag

I'm working on a function to strip HTML, but preserve things like paragraph spacing. In removing HTML tags, sometimes you end up with lots of blank lines... Here's a quick regular expression to convert multiple blank lines with just one \n character:

<cfset content = ReReplace(content, "[\r\n]+", "#Chr(10)#", "ALL")>

The Fixinator Code Security Scanner for ColdFusion & CFML is an easy to use security tool that every CF developer can use. It can also easily integrate into CI for automatic scanning on every commit.

Comments

Pete Freitag

Will for that, try something like this as the pattern: [\r\n]+\t*[\r\n]*

Barney

That will only match one line with tabs at a time. so \n\t\n\t\n\t will be converted to \n\t\n, not just \n. You'll need [\r\n][\r\n\t]*[\r\n] or something like it.

Pete Freitag

By the way, I have a handy tool that you can use to play with Regex: http://www.petefreitag.com/tools/find_replace/

forgetfoo

that's great! been looking for a function/cfc that does a good job of stripping out the HTML from form posts (before they get INSERT'd into the db)... preferably one with a list of optional "okay" HTML tags that can be passed in... never been good with RegEx, though.

accountingapp.net

Domain for sale quality results found here