JavaScript | Remove class using RegEx

by Zoltan Boros

HTML

<pre id="out"></pre>

JavaScript

var outElement = document.getElementById("out");
function println(text)
{
    outElement.appendChild(document.createTextNode(text + "\n"));
}

var clazz = "hidden";
var pattern = new RegExp(/\b/.source + clazz + /\b/.source, "g");
println("Class to be removed: " + clazz);
println("Pattern:             " + pattern.toString());

assertEquals(
    "hidden hiddenfoo barhidden hidden baz hidden".replace(pattern, ""),
    " hiddenfoo barhidden  baz ");

assertEquals(
    "hiddenfoo hidden baz barhidden".replace(pattern, ""),
    "hiddenfoo  baz barhidden");

assertEquals(
    "barhidden hidden baz hiddenfoo".replace(pattern, ""),
    "barhidden  baz hiddenfoo");

function assertEquals(actual, expected)
{
    if (actual === expected) {
        println("Ok.");
    } else {
        println("Mismatch:");
        println("expected: [" + expected + "]");
        println("actual:   [" + actual + "]");
    }
}