JavaScript Tutorial/Regular Expressions/Filter

Материал из Web эксперт
Перейти к: навигация, поиск

Bad word filter

<html>
<head>
    <title>Bad Words Example</title>
    <script type="text/javascript">
            function filterText(sText) {
                var reBadWords = /badword|anotherbadword/gi;
                return sText.replace(reBadWords, "****");
            }
            function showText() {
                var oInput1 = document.getElementById("txt1");
                var oInput2 = document.getElementById("txt2");
                oInput2.value = filterText(oInput1.value);
            }
    </script>
</head>
<body>
    <P>
    <textarea rows="10" cols="50" id="txt1">badword anotherbadword</textarea><br />
    <input type="button" value="Filter Bad Words" onclick="showText()" /></p>
    <P>Filtered Text:<br />
    <textarea rows="10" cols="50" id="txt2"></textarea></p>
</body>
</html>


Strip HTML

<html>
<head>
<title>Strip HTML Example</title>
<script type="text/javascript">
    String.prototype.stripHTML = function () {
        var reTag = /<(?:.|\s)*?>/g;
        return this.replace(reTag, "");
    };
    function showText() {
        var oInput1 = document.getElementById("txt1");
        var oInput2 = document.getElementById("txt2");
        oInput2.value = oInput1.value.stripHTML();
    }
</script>
</head>
<body>
<textarea rows="10" cols="50" id="txt1"></textarea><br />
<input type="button" value="Strip HTML" onclick="showText()" /></p>
<P>Stripped Text:<br />
<textarea rows="10" cols="50" id="txt2"></textarea></p>
</body>
</html>


Trim the leading and trailing spaces

<html>
<head>
<title>Trim Example</title>
<script type="text/javascript">
    String.prototype.trim = function () {
        var reExtraSpace = /^\s+(.*?)\s+$/;
        return this.replace(reExtraSpace, "$1");
    };

    function showText() {
        var oInput1 = document.getElementById("txt1");
        var oInput2 = document.getElementById("txt2");
        oInput2.value = oInput1.value.trim();
    }
</script>
</head>
<body>
<textarea rows="10" cols="50" id="txt1"></textarea><br />
<input type="button" value="Trim" onclick="showText()" /></p>
<P>Trimmed Text:<br />
<textarea rows="10" cols="50" id="txt2"></textarea></p>
</body>
</html>


Use regular expression to remove bad words

<html>
<head>
<title>Bad Words Example</title>
<script type="text/javascript">
        function filterText(sText) {
            var reBadWords = /badword|anotherbadword/gi;
            return sText.replace(reBadWords, function (sMatch) {
                return sMatch.replace(/./g, "*");
            });
        }
        function showText() {
            var oInput1 = document.getElementById("txt1");
            var oInput2 = document.getElementById("txt2");
            oInput2.value = filterText(oInput1.value);
        }
</script>
</head>
<body>
    <textarea rows="10" cols="50" id="txt1">badword anotherbadword</textarea><br />
    <input type="button" value="Filter Bad Words" onclick="showText()" /></p>
    <P>Filtered Text:<br />
    <textarea rows="10" cols="50" id="txt2"></textarea></p>
</body>
</html>