JavaScript検証正規表現
6100 ワード
中国語の文字にマッチする正規表現:[u 4 e 00-u 9 fa 5]中国語とのマッチングは本当に頭が痛いです.この表現があれば簡単です.
文字列の長さ(2バイトの文字長計2、ASCII文字計1)を計算するために使用できます.
空白行にマッチする正規表現:ns*rコメント:空白行を削除するために使用できます.
HTMLタグにマッチした正規表現:<((*?)[>>*?*?コメント:ネット上に流布されているバージョンは最悪です.これも一部しかマッチしていません.複雑な入れ子マークについてはまだ何もできません.
最初の空白文字にマッチする正規表現:^s*$コメント:行の最初の行の最後の空白文字を削除するために使用できます(スペース、タブ、ページの区切りなどを含む)有用な表現です.
アカウントにマッチするかどうかは合法的です.(アルファベットの先頭は5-16バイトが許可されています.アルファベットの数字をアンダースコアにしてもいいです.):^[a-zA-Z 0-9_]{4,15}評価:フォームの検証はとても実用的です.
国内電話番号にマッチします.d{3}d{8}d{4}d{7}コメント:マッチング形式は051-440522または021-878822のようです.
テンセントQQ号に一致します.[1-9][0-9]{4,}コメント:テンセントQQ号は10000から始まります.
中国郵便番号と一致します.[1-9]d{5](?!d)コメント:中国郵便番号は6桁の数字です.
身分証明書と一致します.d{15}|d{18}評注:中国の身分証は15位か18位です.
ipアドレスにマッチします.d+.d+コメント:ipアドレスを抽出する時に役立ちます.
特定の数字にマッチします.^[1-9]d*//整合正の整数^-[1-9]d*//整合負の整数^-?[1-9]d*//整合整数^[1-9]d*/整合非負の整数(正の整数+0)^-[1-9]d*/マッチング正の整数(=1-9])d*/マッチングの正の整数(負の整数+0)^^[1-9].d*.d*/マッチングの正の浮動小数点数^-(*)(1−9)d*.d*|0.d*[1-9]d*124; 0?.0+|0)//マッチング浮動小数点^[1-9]d*.d*[1-9]d*[1-9]d*124; 0?0+|0//マッチング非負浮動小数点数(プラス浮動小数点数+0)^(-([1-9]d*.d*.d*0.d*))|0?0+|0//マッチング非正浮動小数点(負浮動小数点+0)コメント:大量のデータを扱う時に有用です.具体的な応用は修正に注意してください.
特定の文字列にマッチします.^[A-Za-z]+$/マッチングは26文字のアルファベットからなる文字列^[A-Z]+/マッチングは26文字の大文字で構成される文字列^[a-z]+//マッチングは26文字の小文字からなる文字列^[A-Za-z 0-9]+/マッチングは数字と26文字列で構成されています.26文字または下線の文字列
Regullar ExpressitionValidatorを使ってコントロールを検証する際の検証機能とその検証式を以下のように紹介します.
数字しか入力できません.「^[0-9]*」はn桁の数字しか入力できません.「^d{n}」は少なくともn桁の数字しか入力できません.「^d{n、}」はm-n桁の数字しか入力できません.「^d{m,n}」はゼロと非ゼロの先頭の数字しか入力できません.「^(0_)[0-9]]*」、[0-9]]はプラスの2桁のみ入力できます.(.[0-9]{1,3}は、非ゼロの正の整数しか入力できません.「^+?[1-9]、[0-9]*」は、非ゼロの負の整数しか入力できません.「^-[1-9]、[0-9]*」は長さ3の文字しか入力できません.「^.{3}」は26の英字で構成された文字列しか入力できません.26文字の小文字英字で構成された文字列しか入力できません.「^[a-z]+$」は、数字と26文字の文字列しか入力できません.「^[A-Za-z 0-9]+$」は、数字、26文字、またはアンダースコアからなる文字列しか入力できません.ユーザーパスワードを確認します.「^[a-zA-Z]」は、正しいフォーマットは、18文字の間で始まります.
文字、数字、下線のみを含むことができます.確認には^%&'、=???""""(^%&'、=???????????$x 22"+""““““????????""""""、“““““““““””""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""*"?"検証電話番号:"^(((d{3,4})|d{3,4}-)?d{7,8}$
正確なフォーマットは:「XXXX-XXXX」、「XXXX-XXXXX」、「XXXX-XXXX」、
「XXXXX-XXXX」、「XXXXX」、「XXXX」.身分証明書番号(15桁または18桁の数字)を検証します.「^d{15}d{18ドル」は一年の12ヶ月間を検証します.「^(0?[1-9]]($1240])」、「01」-「09」と「1」「12」は一ヶ月間の31日間を検証します.
正しいフォーマットは「01」「09」「1」「31」です.
中国語の文字にマッチする正規表現:[u 4 e 00-u 9 fa5]ダブルバイト文字(漢字も含む):[^x 00-xff]空行にマッチする正規表現:n[s 124]*rがHTMLマークにマッチする正規表現:/<(.*)>.|;;;<(.*)//>/先頭の空欄にマッチする正規表現:n+[Es+(*)+mas++[Es+++++++++++++++*)))***.(*)の正規表現(((*)を+Es+[Es+[Es+*))))))))))**************************.*.w+)*URLにマッチする正規表現:http://([w-]+)+[w-]+(/[w-/?%%]*)?
(1)アプリケーション:文字列の長さを計算する(1バイトの文字長計2,ASCII文字計1)String.prototype.len=function(){return this.replace([^x 00-xff]/g,").length;)
(2)アプリケーション:javascriptにはvbscriptのようなtrim関数がないので、この表式を利用してString.prototype.trim=function(){return this.replace(/(/(^s*)/g,");(3)アプリケーション:正規表現とIPアドレスを用いて変換します.//g/整合IPアドレスの正則表現if(re.test(ip){return RegExp.$1*Math.pow(255,3)+RegExp.$2*Math.pow(255,2)+RegExp.$4*1}else{thronewアプリケーションの名前はErrow(Errovant Nopt)!http://www.9499.net/page1.htm」「s=s.replace(/.*/){0,}([^.]+).*/ig,"$2")///.Page 1.httm(5)アプリケーション:正規表現でページフォーム内のテキストボックスの入力内容を制限します.正規表現では中国語のみ入力できます.onkeyup="value="/blog/value.replace(/"^u 9 E 9 FA 5"/g")"onbeforepaste="clipboard.setData",[/tboxt]正規表現では全角文字しか入力できません:onkeyup="value="/blog/value.replace(//[[[[[[[[]]]]]]]]]“““““””]]]]”オンbeforepaste=“clipboardData[text],clipboardData],clipboardData Data,clipboardData.clipboardData.clipboard Data.clipboardData.clipboard Data.clipboardData.clipboardData.geta.clipboardData.clipboardData.geta.//'^d'/g')「オンブbeforepaste="clipboardData.set Data('text",clipboardData.getData(''text').replacce(/[^d]/g))"")正規表現では数字と英語しか入力できません:onkeyup="value="/blog/value/value/value/blog/value.value.value.value.value.value.value.value.value.value.e. e. e. e. replace.dededededededededededededededededededededededededededededededededededereplace(/[^d]/g,"
*******************************************************************
例:
<script laguage=「javascript」> var patterns=new Object()
//ipアドレスとマッチ patterns.ip=/^(\\d{1,2}𞓜1\d\d|2[0-4]\d 124; 25[0-5])(\.(\.(\d{1,2}124; 1\d\d|2[0]\d|25[0-5])
//メールアドレスにマッチ patterns.email=/^[a-zA-Z 0-9_-]+@[a-zA-Z 0-9_-]+(\.[a-zA-Z 0-9_-]+)/.
//マッチング日付フォーマット2008-01-31が、2008-13-00に一致していません. patterns.date=/^\d{4}-(0?[1-9]|1[0-2])-(0?[1-9]|[1-2]\d 124; 3[0-1]/; /**//*マッチング時間書式は00:15:39ですが、24:60:00にはマッチしません.以下はRegExpオブジェクトの構造方法を使用します. を選択して、RegExpオブジェクトの例を作成します.正規表現のモードテキストの「\」は「\」と書きます. patterns.time=new RegExp("^([0-1]\\d|2[0-3]):[0-5]\d:[0-5]\d\\d$] /**//*verify–文字列がモードに合っているかどうかを確認します. *str–チェックする文字列 *pat–patternsのいずれかの正規表現モードに対応する属性名 */ function verify(str,pat) { thePat=patterns[pat] if(thePat.test(str) { return true; } else { return false; } }
CSDNブログから来ました.http://blog.csdn.net/bluemoonright/archive/2006/11/14/1382916.aspx
文字列の長さ(2バイトの文字長計2、ASCII文字計1)を計算するために使用できます.
空白行にマッチする正規表現:ns*rコメント:空白行を削除するために使用できます.
HTMLタグにマッチした正規表現:<((*?)[>>*?*?コメント:ネット上に流布されているバージョンは最悪です.これも一部しかマッチしていません.複雑な入れ子マークについてはまだ何もできません.
最初の空白文字にマッチする正規表現:^s*$コメント:行の最初の行の最後の空白文字を削除するために使用できます(スペース、タブ、ページの区切りなどを含む)有用な表現です.
Email :w+([-+.]w+)*@w+([-.]w+)*.w+([-.]w+)*
:
URLにマッチする正規表現:[a-zA-z]+:/[^^s]*コメント:ネット上に流布されているバージョンの機能は限られています.上のように基本的には需要を満たすことができます.アカウントにマッチするかどうかは合法的です.(アルファベットの先頭は5-16バイトが許可されています.アルファベットの数字をアンダースコアにしてもいいです.):^[a-zA-Z 0-9_]{4,15}評価:フォームの検証はとても実用的です.
国内電話番号にマッチします.d{3}d{8}d{4}d{7}コメント:マッチング形式は051-440522または021-878822のようです.
テンセントQQ号に一致します.[1-9][0-9]{4,}コメント:テンセントQQ号は10000から始まります.
中国郵便番号と一致します.[1-9]d{5](?!d)コメント:中国郵便番号は6桁の数字です.
身分証明書と一致します.d{15}|d{18}評注:中国の身分証は15位か18位です.
ipアドレスにマッチします.d+.d+コメント:ipアドレスを抽出する時に役立ちます.
特定の数字にマッチします.^[1-9]d*//整合正の整数^-[1-9]d*//整合負の整数^-?[1-9]d*//整合整数^[1-9]d*/整合非負の整数(正の整数+0)^-[1-9]d*/マッチング正の整数(=1-9])d*/マッチングの正の整数(負の整数+0)^^[1-9].d*.d*/マッチングの正の浮動小数点数^-(*)(1−9)d*.d*|0.d*[1-9]d*124; 0?.0+|0)//マッチング浮動小数点^[1-9]d*.d*[1-9]d*[1-9]d*124; 0?0+|0//マッチング非負浮動小数点数(プラス浮動小数点数+0)^(-([1-9]d*.d*.d*0.d*))|0?0+|0//マッチング非正浮動小数点(負浮動小数点+0)コメント:大量のデータを扱う時に有用です.具体的な応用は修正に注意してください.
特定の文字列にマッチします.^[A-Za-z]+$/マッチングは26文字のアルファベットからなる文字列^[A-Z]+/マッチングは26文字の大文字で構成される文字列^[a-z]+//マッチングは26文字の小文字からなる文字列^[A-Za-z 0-9]+/マッチングは数字と26文字列で構成されています.26文字または下線の文字列
Regullar ExpressitionValidatorを使ってコントロールを検証する際の検証機能とその検証式を以下のように紹介します.
数字しか入力できません.「^[0-9]*」はn桁の数字しか入力できません.「^d{n}」は少なくともn桁の数字しか入力できません.「^d{n、}」はm-n桁の数字しか入力できません.「^d{m,n}」はゼロと非ゼロの先頭の数字しか入力できません.「^(0_)[0-9]]*」、[0-9]]はプラスの2桁のみ入力できます.(.[0-9]{1,3}は、非ゼロの正の整数しか入力できません.「^+?[1-9]、[0-9]*」は、非ゼロの負の整数しか入力できません.「^-[1-9]、[0-9]*」は長さ3の文字しか入力できません.「^.{3}」は26の英字で構成された文字列しか入力できません.26文字の小文字英字で構成された文字列しか入力できません.「^[a-z]+$」は、数字と26文字の文字列しか入力できません.「^[A-Za-z 0-9]+$」は、数字、26文字、またはアンダースコアからなる文字列しか入力できません.ユーザーパスワードを確認します.「^[a-zA-Z]」は、正しいフォーマットは、18文字の間で始まります.
文字、数字、下線のみを含むことができます.確認には^%&'、=???""""(^%&'、=???????????$x 22"+""““““????????""""""、“““““““““””""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""*"?"検証電話番号:"^(((d{3,4})|d{3,4}-)?d{7,8}$
正確なフォーマットは:「XXXX-XXXX」、「XXXX-XXXXX」、「XXXX-XXXX」、
「XXXXX-XXXX」、「XXXXX」、「XXXX」.身分証明書番号(15桁または18桁の数字)を検証します.「^d{15}d{18ドル」は一年の12ヶ月間を検証します.「^(0?[1-9]]($1240])」、「01」-「09」と「1」「12」は一ヶ月間の31日間を検証します.
正しいフォーマットは「01」「09」「1」「31」です.
中国語の文字にマッチする正規表現:[u 4 e 00-u 9 fa5]ダブルバイト文字(漢字も含む):[^x 00-xff]空行にマッチする正規表現:n[s 124]*rがHTMLマークにマッチする正規表現:/<(.*)>.|;;;<(.*)//>/先頭の空欄にマッチする正規表現:n+[Es+(*)+mas++[Es+++++++++++++++*)))***.(*)の正規表現(((*)を+Es+[Es+[Es+*))))))))))**************************.*.w+)*URLにマッチする正規表現:http://([w-]+)+[w-]+(/[w-/?%%]*)?
(1)アプリケーション:文字列の長さを計算する(1バイトの文字長計2,ASCII文字計1)String.prototype.len=function(){return this.replace([^x 00-xff]/g,").length;)
(2)アプリケーション:javascriptにはvbscriptのようなtrim関数がないので、この表式を利用してString.prototype.trim=function(){return this.replace(/(/(^s*)/g,");(3)アプリケーション:正規表現とIPアドレスを用いて変換します.//g/整合IPアドレスの正則表現if(re.test(ip){return RegExp.$1*Math.pow(255,3)+RegExp.$2*Math.pow(255,2)+RegExp.$4*1}else{thronewアプリケーションの名前はErrow(Errovant Nopt)!http://www.9499.net/page1.htm」「s=s.replace(/.*/){0,}([^.]+).*/ig,"$2")///.Page 1.httm(5)アプリケーション:正規表現でページフォーム内のテキストボックスの入力内容を制限します.正規表現では中国語のみ入力できます.onkeyup="value="/blog/value.replace(/"^u 9 E 9 FA 5"/g")"onbeforepaste="clipboard.setData",[/tboxt]正規表現では全角文字しか入力できません:onkeyup="value="/blog/value.replace(//[[[[[[[[]]]]]]]]]“““““””]]]]”オンbeforepaste=“clipboardData[text],clipboardData],clipboardData Data,clipboardData.clipboardData.clipboard Data.clipboardData.clipboard Data.clipboardData.clipboardData.geta.clipboardData.clipboardData.geta.//'^d'/g')「オンブbeforepaste="clipboardData.set Data('text",clipboardData.getData(''text').replacce(/[^d]/g))"")正規表現では数字と英語しか入力できません:onkeyup="value="/blog/value/value/value/blog/value.value.value.value.value.value.value.value.value.value.e. e. e. e. replace.dededededededededededededededededededededededededededededededededededereplace(/[^d]/g,"
*******************************************************************
例:
<script laguage=「javascript」> var patterns=new Object()
//ipアドレスとマッチ patterns.ip=/^(\\d{1,2}𞓜1\d\d|2[0-4]\d 124; 25[0-5])(\.(\.(\d{1,2}124; 1\d\d|2[0]\d|25[0-5])
//メールアドレスにマッチ patterns.email=/^[a-zA-Z 0-9_-]+@[a-zA-Z 0-9_-]+(\.[a-zA-Z 0-9_-]+)/.
//マッチング日付フォーマット2008-01-31が、2008-13-00に一致していません. patterns.date=/^\d{4}-(0?[1-9]|1[0-2])-(0?[1-9]|[1-2]\d 124; 3[0-1]/; /**//*マッチング時間書式は00:15:39ですが、24:60:00にはマッチしません.以下はRegExpオブジェクトの構造方法を使用します. を選択して、RegExpオブジェクトの例を作成します.正規表現のモードテキストの「\」は「\」と書きます. patterns.time=new RegExp("^([0-1]\\d|2[0-3]):[0-5]\d:[0-5]\d\\d$] /**//*verify–文字列がモードに合っているかどうかを確認します. *str–チェックする文字列 *pat–patternsのいずれかの正規表現モードに対応する属性名 */ function verify(str,pat) { thePat=patterns[pat] if(thePat.test(str) { return true; } else { return false; } }
CSDNブログから来ました.http://blog.csdn.net/bluemoonright/archive/2006/11/14/1382916.aspx