compruebe en un cuadro de texto los caracteres no válidos utilizando js y expresiones regulares

Me está costando entender cómo funciona RegExp.

Necesito reescribir algún código ASP en html y js, y he encontrado un obstáculo en esta parte:

<asp:RegularExpressionValidator runat="server" id="RegExpValidator" controltovalidate="FileName" Display="Dynamic" ValidationExpression="[^#%&*:<>?/{|}]+">

Ahora, lo que hago es crear un cuadro de texto de entrada que ejecutará una función js siempre que su contenido esté cambiando.

<input type="text" id="fileNameTextBox" class="ms-input" size="35" maxlength="123" onchange="regexValidator(this);"/>

function regexValidator(control) {
            var val = $(control).val();
            if(val == undefined || val == '') {

                $(control).attr("class", "invalid");
            } 
            else { 
            // Regex stuff goes in here
            }
        }

Ahora, por mi vida, no puedo imaginar cómo construir la expresión regular. El campo ValidationExpression supongo que verifica si hay caracteres no válidos, aunque no parece ser una expresión regular bien construida, y no puedo averiguar cómo escribirlo en uno adecuado para usar con js. ¿Podría alguien ayudarme con esto?

Respuestas a la pregunta(3)

Su respuesta a la pregunta