Open In App

JavaScript Program to Check if a String Contains any Special Character

Last Updated : 15 Mar, 2024
Improve
Improve
Like Article
Like
Save
Share
Report

This article will demonstrate the methods to write a JavaScript Program to check if a String contains any special characters. Any string that contains any character other than alphanumeric and space includes the special character. These special characters are '!', '@', '#', '$', '%', '^', '&', '*', '(', ')', '-', '+', '=', '{', '}', '[', ']', ':', ';', '"', '\'', '<', '>', ',', '.', '?', '/', '|', '\\', etc.

Example:

Input: Geeks$For$Geeks
Output: String contains special characters
Explanation: Input string contain '$'  symbol
Input: Geeks For Geeks
Output: String doesnot contain any special character.

Example of Checking if a String Contains any Special Character

1.Naive Method – Using Loops

In this method, we will iterate the given string and check it for the ASCII values for the alphanumeric characters.

Example: In this example, we will use the for loop and check the ASCII value for every character.

Javascript
let str = "Geeks$for$Geeks";
console.log("Given String is: " + str);
for (let i = 0; i < str.length; ++i) {
    let ch = str.charCodeAt(i);
    // console.log(ch);
    if (
        !(ch >= 65 && ch <= 90) && // A-Z
        !(ch >= 97 && ch <= 122) && // a-z
        !(ch >= 48 && ch <= 57) // 0-9
    ) {
        return console.log(
            "String contains special characters"
        );
    }
}

console.log(
    "String does not contain any special character."
);

Output
Given String is: Geeks$for$Geeks
String contains special characters

2.Using RegEx for Alphanumeric Characters

In this method, we will create a regex for all the alphanumeric numbers like A-Z,a-z, and 0-9. and test the string with the same.

Example: In this example, we will use regex.test method to test the given string.

Javascript
const str = "Geeks$for$Geeks";
console.log("Given String is: " + str);
const regex = /[^A-Za-z0-9]/;
if (regex.test(str))
    console.log(
        "String contains special characters"
    );
else
    console.log(
        "String does not contain any special character."
    );

Output
Given String is: Geeks$for$Geeks
String contains special characters

3. Using RegEx for Special Characters

In this method, we will create a regex for all the special characters mention above and test the string with the same..

Example: In this example, we will use regex.test method to test the given string.

Javascript
const str = "GeeksforGeeks";
console.log("Given String is: " + str);
const regex = /[!@#$%^&*()\-+={}[\]:;"'<>,.?\/|\\]/;
if (regex.test(str))
    console.log("String contains special characters");
else
    console.log(
        "String does not contain any special character."
    );

Output
Given String is: GeeksforGeeks
String does not contain any special character.

4.Using indexOf() method

In this approach we iterates over each character in the input string and For each character in the input string, the we checks if it exists in the specialChars string using indexOf() method, which returns the index of the character in the specialChars string. If the character is not found, indexOf() returns -1.

Example: In this example, we will use indexOf method to check the given string.

JavaScript
function containsSpecialCharacter(str) {
    let specialChars =
        "!@#$%^&*()-_=+[{]};:'\",<.>/?\\|";
    for (var i = 0; i < str.length; i++) {
        if (specialChars.indexOf(str[i]) !== -1) {
            return true;
        }
    }
    return false;
}

let str = "Geeks@forGeeks";
console.log("Given string is : "+ str)
if (containsSpecialCharacter(str)) {
    console.log(
        "String contain a special character."
    );
} else {
    console.log(
        "String does not contain any special character."
    );
}

Output
Given string is : Geeks@forGeeks
String contain a special character.


Like Article
Suggest improvement
Share your thoughts in the comments

Similar Reads