Maison  >  Article  >  interface Web  >  Explication détaillée des expressions régulières JavaScript et des effets en cascade

Explication détaillée des expressions régulières JavaScript et des effets en cascade

巴扎黑
巴扎黑original
2017-09-16 09:49:591589parcourir

L'expression régulière (expression régulière) est un modèle de correspondance de chaîne, utilisé pour vérifier si une chaîne contient une chaîne d'un modèle spécifié. Partageons avec vous les expressions JavaScript_regular et les effets en cascade à travers cet article. Les amis intéressés devraient y jeter un œil ensemble

1. > est un modèle de correspondance de chaîne, utilisé pour vérifier si une chaîne contient une chaîne du modèle spécifié.


2. Création d'expressions régulières


var reg = /white/;
var reg = new RegExp("white","g");
3. Les modificateurs d'expression régulière

g effectuent une correspondance globale (trouver toutes les correspondances au lieu de s'arrêter après avoir trouvé la première correspondance). i n'est pas sensible à la casse

m correspondance multiligne




4. Symboles d'expression régulière

crochets. :Les crochets sont utilisés pour rechercher des caractères dans une certaine plage :

[abc] Recherchez n'importe quel caractère entre les crochets.

[^abc] recherche tous les caractères qui ne sont pas entre crochets.

[0-9] Recherche n'importe quel nombre de 0 à 9.

[a-z] Recherche n'importe quel caractère de a minuscule à z minuscule.
[A-Z] Recherche n'importe quel caractère de A majuscule à Z majuscule.
[A-z] Recherche n'importe quel caractère de A majuscule à z minuscule.
[adgk] Trouvez n'importe quel personnage dans l'ensemble donné.
[^adgk] trouve n'importe quel caractère en dehors de l'ensemble donné.
(rouge|bleu|vert) Recherchez n’importe quelle option spécifiée.

Métacaractères : les métacaractères sont des caractères ayant une signification particulière :

/…/ représente le début et la fin d'un motif

^ correspond au début d'une chaîne

$ correspond à la fin de la chaîne

s Tout caractère d'espacement
S Tout caractère autre qu'un espace
d Correspond à un caractère numérique, équivalent à [0-9]
D Tout caractère sauf un chiffre, etc. Équivalent à [^ 0-9]
w Correspond à un chiffre, un trait de soulignement ou un caractère alphabétique, équivalent à [A-Za-z0-9_]
W Tout caractère non unique, équivalent à [^a-zA -z0-9_]
. N'importe quel caractère à l'exception des sauts de ligne

Caractères répétitifs d'expression régulière (quantificateur)

{n} correspond à l'élément précédent n fois

{ n,} Correspond à l'élément précédent n fois , ou plusieurs fois

{n,m} Correspond à l'élément précédent au moins n fois, mais pas plus de m fois

* Correspond à l'élément précédent 0 fois ou plus, équivalent dans {0,}
+ correspond à l'élément précédent une ou plusieurs fois, ce qui équivaut à {1,}
 ? Correspond à l'élément précédent 0 ou 1 fois, ce qui signifie que l'élément précédent est facultatif, équivalent à {0,1}


5 Propriétés de l'objet RegExp

Si l'objet RegExp global a le drapeau g, qui déclare si l'expression régulière donnée effectue une correspondance globale. ignoreCase Si l'objet RegExp a l'indicateur i, qui déclare si l'expression régulière donnée effectue une correspondance insensible à la casse.

multiline Indique si l'objet RegExp possède le drapeau m, qui déclare si l'expression régulière donnée effectue une correspondance multiligne.

6. Méthodes de l'objet RegExp

1. exec récupère la correspondance de l'expression régulière dans les caractères, renvoie la valeur trouvée et Déterminer sa positionexec()

La méthode exec() récupère une valeur spécifiée dans une chaîne. La valeur de retour est la valeur trouvée. Si aucune correspondance n'est trouvée, null est renvoyé.

Exemple 1 :

2 test Récupère la valeur spécifiée dans la chaîne et renvoie true ou false

test( )
var patt1=new RegExp("e"); document.write(patt1.exec("The best things in life are free")); 由于该字符串中存在字母 "e",以上代码的输出将是:
e

La méthode test() récupère la valeur spécifiée dans une chaîne. La valeur de retour est vraie ou fausse.

Exemple :


7. Analyse (vérification par e-mail) var reg=/^w+@w+.[a -zA-Z]{2,3}(.[a-zA-Z]{2,3})?$/;
var patt1=new RegExp("e"); document.write(patt1.test("The best things in life are free")); 由于该字符串中存在字母 "e",以上代码的输出将是:
True

//Création d'expression régulière ^ Début de chaîne$Fin de chaîne

wTout caractère lettres et chiffres, trait de soulignement

+ indique que le caractère précédent apparaît {1,}, une ou plusieurs fois.
@ Chaîne ordinaire
w N'importe quelle chaîne ddd@123
N'importe quel caractère sauf la nouvelle ligne ddd@123.
[a-zA-Z] ddd@123.c ddd@ 123.n
. {2,3} ddd@123.com ddd@123.net ddd@123.tv
(.[a-zA-Z]{2,3}) ? net

Règles régulières couramment utilisées :

Règles régulières du nom d'utilisateur : /^[a-zA-Z][a-zA-Z0-9]{3,15}$ /

Régularité du mot de passe :/^[a-zA-Z0-9]{4,10}$/

Régularité des anniversaires :/^((19d{2})|(200d))-(0?[ 1-9 ]|1[0-2])-(0?[1-9]|[1-2]d|3[0-1])$/

E-mail régulier :/^w+@w+( .[a -zA-Z]{2,3}){1,2}$/

Code postal :/^d{6}$/
Numéro de téléphone portable :/^1d{10}$/



8. Méthodes de l'objet String

match 找到一个或多个正则表达式的匹配
search 检索与正则表达式相匹配的值
replace 替换与正则表达式匹配的字符串
split 把字符串分割为字符串数组
9、select对象常用事件、方法和属性.

1、事件    onchange    当改变选项时调用的事件

2、方法    add()   向下拉列表中添加一个选项

    示例:


 var province=document.getElementById("selProvince").value; 
  var city=document.getElementById("selCity");
  city.options.length=0; 
  switch(province){
   case "河南省":
    city.add(new Option("郑州市","郑州市"),null);
    city.add(new Option("洛阳市","洛阳市"),null);
   break;
    …… 
  }

3、属性:

    options[]   返回包含下拉列表中的所有选项的一个数组
    selectedIndex   设置或返回下拉列表中被选项目的索引号
    length  返回下拉列表中的选项的数目

    示例:


 function get(){
   var index=document.getElementById("fruit").selectedIndex;
   var len=document.getElementById("fruit").length;
   var show=document.getElementById("show");
   show.innerHTML="被选选项的索引号为:"+index+"<br/>下拉列表选项数目为:"+len;
  }

4、Option对象常用属性:

    text:设置或返回某个选项的纯文本值
    value:设置或返回被送往服务器的值

10、数组常用的属性和方法。

属性  length  设置或返回数组中元素的数目

方法:

    join( ) 把数组的所有元素放入一个字符串,通过一个的分隔符进行分隔
    sort( ) 对数组的元素进行排序

****读取二维数组中的元素值:


var cityList = new Array();
 cityList[&#39;河北省&#39;] = [&#39;邯郸市&#39;,&#39;石家庄市&#39;];
 cityList[&#39;河南省&#39;] = [&#39;郑州市&#39;,&#39;洛阳市&#39;];
 cityList[&#39;湖北省&#39;] = [&#39;武汉市&#39;,&#39;宜昌市&#39;];
 for(var i in cityList){
  document.getElementById("show").innerHTML+=i+"<br/>"; 
 }
  for(var j in cityList){
  for(var k in cityList[j]){
  document.getElementById("show").innerHTML+=cityList[j][k]+"  ”;
 }
 document.getElementById("show").innerHTML+="<br/>“; }

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:
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