Maison interface Web js tutoriel Expressions régulières JS que vous devez maîtriser

Expressions régulières JS que vous devez maîtriser

May 13, 2017 am 10:42 AM
js 正则表达式

这篇文章主要介绍了JS常用正则表达式,总结分析了常见的数字、字符、邮箱、身份证、电话等的正则验证技巧,需要的朋友可以参考下

本文实例讲述了JS常用正则表达式。分享给大家供大家参考,具体如下:

在项目中个人写的一个常用验证的正则表达式:(仅供参考)

//定义两个全局变量
var reg;
var errorInfo;
//输入的数字类型必须是int型,正负整数都可以
function validate_integer(text,value){
reg=/^[-\+]?\d+$/;
errorInfo=text+" "+value+" 只能是整数,请核实重新输入!";
verifyByReg(value,reg,errorInfo);
}
//输入的数字类型必须是double型,保留的小数位数只能是2位,可以为正负
function validate_double(text,value){
reg=/^[-\+]?([1-9](\d+)?|0)(\.\d{2})$/;
errorInfo=text+" "+value+" 只能保留2为小数,请核实重新输入";
verifyByReg(value,reg,errorInfo);
}
//输入的必须是全是数字类型型,不能出现其他字符
function validate_number(text,value){
reg=/^\d+$/;
errorInfo=text+" "+value+" 只能是数字,请核实重新输入";
verifyByReg(value,reg,errorInfo);
}
//验证输入n位的数值类型
function validate_number_n(text,value,n){
reg=eval("/^\\d{"+n+"}$/");
errorInfo=text+" "+value+" 只能是"+n+"位数字,请核实重新输入";
verifyByReg(value,reg,errorInfo);
}
//验证有两位小数的正实数
function validate_decimal_two(text,value){
reg=/^([1-9](\d+)?|0)(.[0-9]{2})?$/;
errorInfo=text+" "+value+" 只能是保留2位小数的正数,请核实重新输入";
verifyByReg(value,reg,errorInfo);
}
//验证非零的正整数
function validate_number_positive(text,value){
reg=/^\+?[1-9][0-9]*$/;
errorInfo=text+" "+value+" 只能是非0的正整数,请核实重新输入";
verifyByReg(value,reg,errorInfo);
}
//验证非零的负整数
function validate_number_negative(text,value){
reg=/^[-][1-9][0-9]*$/;
errorInfo=text+" "+value+" 只能是非0的负整数,请核实重新输入";
verifyByReg(value,reg,errorInfo);
}
//验证非负整数,可以为0
function validate_positive_haszero(text,value){
reg=/^[1-9](\d+)?|0$/;
errorInfo=text+" "+value+" 只能是是0或正整数,请核实重新输入";
verifyByReg(value,reg,errorInfo);
}
//验证非正整数,可以为0
function validate_negative_haszero(text,value){
reg=/^\-[1-9](\d+)?|0$/;
errorInfo=text+" "+value+" 只能是是0或负整数,请核实重新输入";
verifyByReg(value,reg,errorInfo);
}
//验证非负浮点数(正浮点数 + 0)
function validate_float_notnegative(text,value){
reg=/^([1-9](\d+)?|0)(\.\d+)|0$/;
errorInfo=text+" "+value+" 只能是是0或正浮点数,请核实重新输入";
verifyByReg(value,reg,errorInfo);
}
//验证正浮点数
function validate_float_positive(text,value){
reg=/^([1-9](\d+)?|0)(\.\d+)$/;
errorInfo=text+" "+value+" 只能是正浮点数,请核实重新输入";
verifyByReg(value,reg,errorInfo);
}
//非正浮点数(负浮点数 + 0)
function validate_float_notpositive(text,value){
reg=/^\-([1-9](\d+)?|0)(\.\d+)|0$/;
errorInfo=text+" "+value+" 只能是是0或者负浮点数,请核实重新输入";
verifyByReg(value,reg,errorInfo);
}
//验证负浮点数
function validate_float_negative(text,value){
reg=/^\-([1-9](\d+)?|0)(\.\d+)$/;
errorInfo=text+" "+value+" 只能是负浮点数,请核实重新输入";
verifyByReg(value,reg,errorInfo);
}
//验证正浮点数多少位小数
function validate_float_posbit(text,value,n){
reg=eval("/^(\\d+)(\\.\\d{"+n+"})$/");
errorInfo=text+" "+value+" 只能是"+n+"位正浮点数,请核实重新输入";
verifyByReg(value,reg,errorInfo);
}
//验证负浮点数多少位小数
function validate_float_negbit(text,value,n){
reg=eval("/^(-?\\d+)(\\.\\d{"+n+"})$/");
errorInfo=text+" "+value+" 只能是"+n+"位负浮点数,请核实重新输入";
verifyByReg(value,reg,errorInfo);
}
//校验文本是否为空
function checknull(text,value){
if(value=="" || typeof(value)=='undefined'){
errorInfo=text+" "+value+" 不能为空,请重新输入!";
returnInfo(errorInfo);
}
}
//验证由26个英文字母组成的字符串
function validate_string_letter(text,value){
reg=/^[A-Za-z]+$/;
errorInfo=text+" "+value+" 只能是26位不区分大小写的英文字母组成,请核实重新输入";
verifyByReg(value,reg,errorInfo);
}
//验证由26个英文字母的大写组成的字符串
function validate_string_bigletter(text,value){
reg=/^[A-Z]+$/;
errorInfo=text+" "+value+" 只能是26位大写的英文字母组成,请核实重新输入";
verifyByReg(value,reg,errorInfo);
}
//验证由26个英文字母的小写组成的字符串
function validate_string_smallletter(text,value){
reg=/^[a-z]+$/;
errorInfo=text+" "+value+" 只能是26位小写的英文字母组成,请核实重新输入";
verifyByReg(value,reg,errorInfo);
}
//验证由数字和26个英文字母组成的字符串
function validate_string_number(text,value){
reg=/^[A-Za-z0-9]+$/;
errorInfo=text+" "+value+" 只能是数字和26个英文字母组成,请核实重新输入";
verifyByReg(value,reg,errorInfo);
}
//验证由数字、26个英文字母或者下划线组成的字符串
function validate_string_numberandunderline(text,value){
reg=/^\w+$/;
errorInfo=text+" "+value+" 只能是数字、26个英文字母或者下划线组成,请核实重新输入";
verifyByReg(value,reg,errorInfo);
}
//验证邮箱
function validate_email(value){
reg=/^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$/;
errorInfo='邮箱 '+value+" 无效,请重新输入";
verifyByReg(value,reg,errorInfo);
}
//验证时如果选择默认调用此方法 金额类型,可以是正整数或保留4位有效数字的正整数
/**有问题
function validate_money_default(text,value){
var reg=/^\d+(\.\d{4})?$/;
var errorInfo=text+" "+value+" 只能是正整数或保留4位有效数字,请核实重新输入";
verifyByReg(value,reg,errorInfo);
}
**/
//验证输入的只能是中文
function validate_chinese(text,value){
reg=/^[\u4e00-\u9fa5]+$/;
errorInfo=text+" "+value+" 只能是中文字符,请重新输入";
verifyByReg(value,reg,errorInfo);
}
//验证输入的只能是n位的中文
function validate_bitchinese(text,value,bit){
reg=eval("/^[\\u4e00-\\u9fa5]{"+bit+"}$/");alert(reg);
errorInfo=text+" "+value+" 只能是"+bit+"位中文字符,请重新输入";
verifyByReg(value,reg,errorInfo);
}
//跟最大的值比较,此方法是看数字是否超出系统的上限
function thanMax(text,number,max){
if(number>max){
errorInfo=text+" "+number+" 不能大于"+max+",请重新输入";
returnInfo(errorInfo);
}
}
//跟最小的值比较,此方法是看数字是否低于系统的下限
function thinMin(text,number,min){
if(number<min){
errorInfo=text +" "+number+" 不能小于"+min+",请重新输入";
returnInfo(errorInfo);
}
}
//输入文本的字符串是否在系统的指定长度内
function isLimit(text,value,length){
var arr=value.split("");
if(arr.length>length){
errorInfo=text +" "+value+" 字符过长,请输入最多"+length+"位字符";
returnInfo(errorInfo);
}
}
//邮政编码的验证
function validate_zipcode(value){
reg=/[1-9]\d{5}(?!\d)/;
errorInfo=&#39;邮政编码 &#39;+value+" 有误,请核实重新输入";
verifyByReg(value,reg,errorInfo);
}
//对数值类型的数据进行简单的验证和转换,因为在设置的时候没有传入这个参数的话就会出现js代码错误,所以应该对数值型的数据进行转换
//非空字符的判定
function getZeroByNull(text,value){
errorInfo=text+" "+value+" 不能为空,请核实重新输入";
if(value==null||value==&#39;&#39;||value==&#39;undefined&#39;){
returnInfo(errorInfo);
}
}
//身份证验证,分为了两种,15位和18位
function validate_IdCard(value){
var size=value.split("");
if(size.length==15){
reg=/^[1-9]\d{7}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}$/;//15位身份证验证
errorInfo=&#39;位身份证号码 &#39;+value+" 有误,请核实重新输入";
}else if(size.length==18){
reg=/^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}([0-9]|X|x)$/;//18位身份证验证
errorInfo=&#39;位身份证号码 &#39;+value+" 有误,请核实重新输入";
}else{
errorInfo="请输入合法的身份证号码!";
returnInfo(errorInfo);
}
verifyByReg(value,reg,errorInfo);
}
//每个验证都需要调用此方法
function verifyByReg(value,reg,errorInfo){
if(value!=&#39;&#39;&&reg!=&#39;&#39;){
var regExp = new RegExp(reg);
if(!regExp.test(value)){
alert(errorInfo);
throw errorInfo;
}
}
}
//不进过正则表达式验证,只需要返回信息,适合内部调用此方法
function returnInfo(message){
alert(message);
throw message;
}
//许可证号 生产企业的格式:QS 1234 2346 3456 其中空格可有可无
///经营企业许可证的格式为: 湘010249 但是中国的省会简称可能会有三个字的,所以中文可以定义为1-3个
function validate_license(value,type){
if(type==1){
reg=/^[a-zA-Z]{2}[ ]?(\d{4}[ ]?\d{4}[ ]?\d{4})$/;//生产企业许可证号
errorInfo="生产许可证号 "+value+" 有误,请核实重新输入!";
}else if(type==2){
reg=/^[\u4e00-\u9fa5]{1,3}\d{6}$/;
errorInfo="经营许可证号 "+value+" 有误,请核实重新输入!";
}
verifyByReg(value,reg,errorInfo);
}
//传真 可以匹配的字符串如:+123 -999 999 ; +123-999 999 ;123 999 999 ;+123 999999等
function validate_fax(value){
reg=/^([+]{0,1})?\d{1,3}[ ]?([-]?((\d)|[ ]){1,12})+$/;
errorInfo="传真 "+value+" 有误,请重新输入!";
verifyByReg(value,reg,errorInfo);
}
//电话号码可以输入:电话或者手机 其中手机号码可以是(+86)、(86)+号码,也可以是号码 电话的号码可以是区号+号码 区号-号码 号码
function validate_tel(value){
reg=/(^(0\d{2,3}([-|+])?)?\d{7}$)|(^(\d{3,4}([-|+])?)?\d{7,8}$)|(^([+]?(86)?[+]?)1[3-9]\d{9}$)/;
errorInfo=&#39;电话号码 &#39;+value+" 有误,请核实重新输入!";
verifyByReg(value,reg,errorInfo);
}
//日:大于0小于等于31的正整数
function validate_day(value){
reg=/(^[0]?[1-9]$)|(^[1-2]\d$)|(^[3][0-1]$)/;
errorInfo=&#39;日期 &#39;+value+" 有误,请核实重新输入!";
verifyByReg(value,reg,errorInfo);
}
//月:合法月份
function validate_month(value){
reg=/(^[0]?[1-9]$)|(^[1][0-2]$)/;
errorInfo=&#39;月份 &#39;+value+" 有误,请核实重新输入!";
verifyByReg(value,reg,errorInfo);
}
//年:合法年份 在这里合法的年份为公元1000年至公元2999年
function validate_year(value){
reg=/^[1-2]\d{3}$/;
errorInfo=&#39;年份 &#39;+value+" 有误,请核实重新输入!";
verifyByReg(value,reg,errorInfo);
}
//百分比:合法百分比(0-100之前的数字)
function validate_percentage(text,value){
reg=/(^[1-9](\d)?(\.\d+)?$)|(^0(\.\d+)?$)|(^100$)/;
errorInfo=text +" "+value+" 有误,请输入0到100的数字!";
verifyByReg(value,reg,errorInfo);
}
//系数:小于等于1的正数 在这里系数的小数点后面也是2位
function validate_modulus(text,value){
reg=/^[0](\.\d{2})$|^[1](\.[0]{2})?$/;
errorInfo=text+" "+value+" 有误,请输入小于0到1的数字!";
verifyByReg(value,reg,errorInfo);
}
//验证非负的正数,包含了正整数和正浮点数
function validate_posnumhaszero(text,value){
checknull(text,value);
reg=/^[1-9](\d+)?(\.\d+)?$|^0(\.\d+)?$/;
errorInfo=text+" "+value+" 有误,请输入大于或等于0 的数字!";
verifyByReg(value,reg,errorInfo);
}
//验证非正的负数,包含了负整数和负浮点数
function validate_negnumhaszero(text,value){
checknull(text,value);
reg=/^[-][1-9](\d+)?(\.\d+)?$|^[-]0(\.\d+)?$/;
errorInfo=text+" "+value+" 有误,请输入小于或等于0 的数字!";
verifyByReg(value,reg,errorInfo);
}
//验证正数,包含了正整数和正浮点数
function validate_posnum(text,value){
checknull(text,value);
reg=/^[1-9](\d+)?(\.\d+)?$|^0(\.\d+)$/;
errorInfo=text+" "+value+" 有误,请输入大于0 的数字!";
verifyByReg(value,reg,errorInfo);
}
//验证负数,包含了负整数和负浮点数
function validate_negnum(text,value){
checknull(text,value);
reg=/^[-][1-9](\d+)?(\.\d+)?$|^[-]0(\.\d+)$/;
errorInfo=text+" "+value+" 有误,请输入小于0 的数字!";
verifyByReg(value,reg,errorInfo);
}
//验证数,包括所有的数值,正数、负数、正浮点数、负浮点数
function validate_allnum(text,value){
checknull(text,value);
reg=/^[-|+]?[1-9](\d+)?(\.\d+)?$|^[-|+]?0(\.\d+)?$/;
errorInfo=text+" "+value+" 有误,请输入数字!";
verifyByReg(value,reg,errorInfo);
}
Copier après la connexion

【相关推荐】

1. 特别推荐“php程序员工具箱”V0.1版本下载

2. 免费js在线视频教程

3. php.cn独孤九贱(3)-JavaScript视频教程

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Recommandé : Excellent projet de détection et de reconnaissance des visages open source JS Recommandé : Excellent projet de détection et de reconnaissance des visages open source JS Apr 03, 2024 am 11:55 AM

La technologie de détection et de reconnaissance des visages est déjà une technologie relativement mature et largement utilisée. Actuellement, le langage d'application Internet le plus utilisé est JS. La mise en œuvre de la détection et de la reconnaissance faciale sur le front-end Web présente des avantages et des inconvénients par rapport à la reconnaissance faciale back-end. Les avantages incluent la réduction de l'interaction réseau et de la reconnaissance en temps réel, ce qui réduit considérablement le temps d'attente des utilisateurs et améliore l'expérience utilisateur. Les inconvénients sont les suivants : il est limité par la taille du modèle et la précision est également limitée ; Comment utiliser js pour implémenter la détection de visage sur le web ? Afin de mettre en œuvre la reconnaissance faciale sur le Web, vous devez être familier avec les langages et technologies de programmation associés, tels que JavaScript, HTML, CSS, WebRTC, etc. Dans le même temps, vous devez également maîtriser les technologies pertinentes de vision par ordinateur et d’intelligence artificielle. Il convient de noter qu'en raison de la conception du côté Web

Validation des expressions régulières PHP : détection du format numérique Validation des expressions régulières PHP : détection du format numérique Mar 21, 2024 am 09:45 AM

Vérification des expressions régulières PHP : détection du format numérique Lors de l'écriture de programmes PHP, il est souvent nécessaire de vérifier les données saisies par l'utilisateur. L'une des vérifications courantes consiste à vérifier si les données sont conformes au format numérique spécifié. En PHP, vous pouvez utiliser des expressions régulières pour réaliser ce type de validation. Cet article explique comment utiliser les expressions régulières PHP pour vérifier les formats de nombres et fournit des exemples de code spécifiques. Tout d’abord, examinons les exigences courantes de validation du format numérique : Entiers : contiennent uniquement des nombres de 0 à 9, peuvent commencer par un signe plus ou moins et ne contiennent pas de points décimaux. point flottant

Comment valider une adresse e-mail dans Golang à l'aide d'une expression régulière ? Comment valider une adresse e-mail dans Golang à l'aide d'une expression régulière ? May 31, 2024 pm 01:04 PM

Pour valider les adresses e-mail dans Golang à l'aide d'expressions régulières, procédez comme suit : Utilisez regexp.MustCompile pour créer un modèle d'expression régulière qui correspond aux formats d'adresse e-mail valides. Utilisez la fonction MatchString pour vérifier si une chaîne correspond à un modèle. Ce modèle couvre la plupart des formats d'adresses e-mail valides, notamment : Les noms d'utilisateur locaux peuvent contenir des lettres, des chiffres et des caractères spéciaux : !.#$%&'*+/=?^_{|}~-`Les noms de domaine doivent contenir au moins un lettre, suivie de lettres, de chiffres ou de tirets. Le domaine de premier niveau (TLD) ne peut pas comporter plus de 63 caractères.

Comment faire correspondre les horodatages à l'aide d'expressions régulières dans Go ? Comment faire correspondre les horodatages à l'aide d'expressions régulières dans Go ? Jun 02, 2024 am 09:00 AM

Dans Go, vous pouvez utiliser des expressions régulières pour faire correspondre les horodatages : compilez une chaîne d'expression régulière, telle que celle utilisée pour faire correspondre les horodatages ISO8601 : ^\d{4}-\d{2}-\d{2}T \d{ 2}:\d{2}:\d{2}(\.\d+)?(Z|[+-][0-9]{2}:[0-9]{2})$ . Utilisez la fonction regexp.MatchString pour vérifier si une chaîne correspond à une expression régulière.

Expressions régulières PHP : correspondance exacte et exclusion des inclusions floues Expressions régulières PHP : correspondance exacte et exclusion des inclusions floues Feb 28, 2024 pm 01:03 PM

Expressions régulières PHP : correspondance exacte et exclusion Les expressions régulières d'inclusion floue sont un puissant outil de correspondance de texte qui peut aider les programmeurs à effectuer une recherche, un remplacement et un filtrage efficaces lors du traitement du texte. En PHP, les expressions régulières sont également largement utilisées dans le traitement des chaînes et la correspondance des données. Cet article se concentrera sur la façon d'effectuer une correspondance exacte et d'exclure les opérations d'inclusion floue en PHP, et l'illustrera avec des exemples de code spécifiques. Correspondance exacte La correspondance exacte signifie faire correspondre uniquement les chaînes qui répondent à la condition exacte, sans aucune variation ni mot supplémentaire.

La relation entre js et vue La relation entre js et vue Mar 11, 2024 pm 05:21 PM

La relation entre js et vue : 1. JS comme pierre angulaire du développement Web ; 2. L'essor de Vue.js en tant que framework front-end ; 3. La relation complémentaire entre JS et Vue ; Vue.

Comment vérifier le mot de passe à l'aide d'une expression régulière dans Go ? Comment vérifier le mot de passe à l'aide d'une expression régulière dans Go ? Jun 02, 2024 pm 07:31 PM

La méthode d'utilisation des expressions régulières pour vérifier les mots de passe dans Go est la suivante : Définissez un modèle d'expression régulière qui répond aux exigences minimales de mot de passe : au moins 8 caractères, y compris les lettres minuscules, les lettres majuscules, les chiffres et les caractères spéciaux. Compilez les modèles d'expressions régulières à l'aide de la fonction MustCompile du package regexp. Utilisez la méthode MatchString pour tester si la chaîne d'entrée correspond à un modèle d'expression régulière.

Filtrage des caractères chinois : pratique des expressions régulières PHP Filtrage des caractères chinois : pratique des expressions régulières PHP Mar 24, 2024 pm 04:48 PM

PHP est un langage de programmation largement utilisé, particulièrement apprécié dans le domaine du développement web. Dans le processus de développement Web, nous rencontrons souvent le besoin de filtrer et de vérifier le texte saisi par l'utilisateur, parmi lesquels le filtrage des caractères est une opération très importante. Cet article explique comment utiliser les expressions régulières en PHP pour implémenter le filtrage des caractères chinois et donne des exemples de code spécifiques. Tout d'abord, nous devons préciser que la plage Unicode de caractères chinois va de u4e00 à u9fa5, c'est-à-dire que tous les caractères chinois se trouvent dans cette plage.

See all articles