2016-08-01 2 views
0

私はhtmlのテキストフィールドを持っており、入力はdomain \ userという形式である必要があります。私がこれを強制するために使用している正規表現はvar x = /\S+\\\S+/;です。テキストボックスの入力値はx \ yです。テキストボックスの値を$('#textbox-name').val()まで取得してreg-exの一致を実行すると、戻り値はfalseになります。しかし、$('#textbox-name').val().replace('\\', '\\\\');を実行して一致を実行すると、結果は真です。 val()関数は戻り値をエスケープしませんか?JavaScript - テキストボックスから読み取った値はエスケープされていますか?

+0

正規表現に '\\\\'が3つあるのはなぜですか? – Amit

+0

@Amit:最初の2つはリテラルのバックスラッシュを示します。最後のものは空白以外の "\ S"の一部です。 –

+0

正規表現がマッチする前にスラッシュをエスケープする必要はありません。私はあなたが試したものを正確に試しました。あなたの正確なコードを投稿してください - それは別のものかもしれません。 –

答えて

1

いいえ、そうではありません。入力されたテキストを返します

関連する問題