2012-04-09 9 views
2

I regulären Ausdruck bin mit der ungültigen Eingabe vom Endbenutzer eingegebenen zu filtern.Zeichen für "in Validation in ASP.NET

der zulässige Eingang ist word, space, digital und ./@,#&$_:?'%!~"|+;{}-\.
Unten ist mein Code.

<asp:RegularExpressionValidator ID="rgVEditTB1" runat="server" ControlToValidate="txtEditTB1" 
    ValidationExpression="^[\w\s\d\-\.\/\@\,\#\&\$\:\?\"\'\%\!\–\~\|\+\;\”\{\}\-\\]+$" ErrorMessage="Invalid Special Character" /> 

Allerdings bin ich der Begegnung Problem " im ValidataionExpression, es Fehler zu entrinnen mit

Server Tag ist Fehler nicht gut ausgebildet.

Ich versuchte, die Escape-Zeichen zu ändern:

\"" 
\" 
"" 

Es gibt mir den gleichen Fehler auch.

Was sollte das richtige Escape-Zeichen in die ValidationExpression setzen?

Antwort

4

Sie sollten die HTML-Codierungswerte übergeben können. Übergeben Sie also &quot; würde wie " übergeben werden. Etwas wie dieses: ValidationExpression="^[^&quot;]+$". In dieser Regex sage ich: Entsprechen Sie einem beliebigen Zeichen vom Anfang bis zum Ende der Zeichenfolge, die kein Anführungszeichen ist (").

Das gleiche gilt für die anderen Sonderzeichen. Sie können einen Blick auf here werfen für mehr Kodierungswerte.