Table des matières
正则的方法-text
字符串方法-match
字符串的方法-search
字符串方法-replace
子项 - ()
子项重定向
Maison développement back-end tutoriel php Points de connaissances réguliers

Points de connaissances réguliers

Dec 08, 2017 pm 03:12 PM
正则 知识点

正则表达式,又称规则表达式,计算机科学的一个概念。正则表通常被用来检索、替换那些符合某个模式(规则)的文本。

许多程序设计语言都支持利用正则表达式进行字符串操作。

正则的两种写法:

第一种(标准写法):
new RegExp(规则,修饰符);

第二种(简写):
/规则/

  • d:一个数字

  • D:一个非数字

  • w:一个数字、字母、下划线

  • W:一个非数字、字母、下划线

  • n:换行

  • s:空格

  • S:非空格

  • b:边界符

  • .:任意字符除了n

  • []:在中括号里任意选择一个字符。

  • [^]:排除

  • {}:量词范围

  • {0,1}/?:最小可以没有最大1个

  • {0,}/*:最小没有,最大无限

  • {1,}/+:最小1个,最大无限

  • {n}:固定的次数

  • 修饰符:i ->  忽略大小写。

  • 转义符:\

正则的方法-text

test:检测是否正则匹配的内容,如果正则成立那么返回一个布尔值。

  • 正则.test(string);

    var str = 'RegExp';
    var re = new RegExp('p','i');
    console.log(re.test(str));
Copier après la connexion
Copier après la connexion

字符串方法-match

match:将匹配到的字符放到一个数组中。

string.match(正则);

当匹配到的字符只有一个的时候,会显示出多个属性

index: 匹配字符的位置

input: 所有内容

而length为1

  • match如果找不到返回null

    var str = 'das37213dsa321hjkh321321';
    console.log(str.match(/\d+/g))
Copier après la connexion
Copier après la connexion

search:找到(可以指定也可以正则匹配)匹配的字符位置。

sting.search(字符串||正则);

    var str = 'aacabca523c';
    console.log(str.search(/\d/));
Copier après la connexion
Copier après la connexion
  • search如果找不到返回-1

字符串方法-replace

replace:replace

string.replace(要替换谁||可以用正则,替换成什么||函数);

返回值为替换好的字符串。

注意:
如果使用函数,那么一定要有retrun,不然为undefind

一般情况下

函数内的第一个参数是当前匹配的字符。

函数内的第二个参数是当前匹配的索引值。

函数内的第三个参数是当前总的字符串。

函数内的第四个以后参数都为undefined。

    var str = '中国共产党,习近平总书记说:“法轮功是邪教!”';
    str.replace(/中国共产党|习近平|法轮功|邪教/g,function($0,$1,$2,$3,$4){
        console.log($0,$1,$2,$3,$4);
    });
Copier après la connexion
Copier après la connexion

子项 - ()

从左往右数

如果正则中有子项

从函数的第一个参数之后就是匹配到的子项值,
当参数的个数等于子项个数+1的时候,之后都为正常模式下的参数了(比如:索引,整个字符,undefined..)

    var str = '2017/2/17';
    var str = str.replace(/(\d+)\D+(\d+)\D+(\d+)/,function($0,$1,$2,$3){
        //console.log($1,$2,$3);
        return $1 + '年' + $2 + '月' + $3 + '日';
    });
    
    console.log(str);
Copier après la connexion
Copier après la connexion

子项重定向

    var str = 'ssssssssaaaaaabbbbbb';
    str.replace(/(\w)\1+/g,function($0,$1){
        console.log($1);
    });
Copier après la connexion
Copier après la connexion

                                               


正则的两种写法:

第一种(标准写法):
new RegExp(规则,修饰符);

第二种(简写):
/规则/

  • d:一个数字

  • D:一个非数字

  • w:一个数字、字母、下划线

  • W:一个非数字、字母、下划线

  • n:换行

  • s:空格

  • S:非空格

  • b:边界符

  • .:任意字符除了n

  • []:在中括号里任意选择一个字符。

  • [^]:排除

  • {}:量词范围

  • {0,1}/?:最小可以没有最大1个

  • {0,}/*:最小没有,最大无限

  • {1,}/+:最小1个,最大无限

  • {n}:固定的次数

  • 修饰符:i ->  忽略大小写。

  • 转义符:\

正则的方法-text

test:检测是否正则匹配的内容,如果正则成立那么返回一个布尔值。

  • 正则.test(string);

    var str = 'RegExp';
    var re = new RegExp('p','i');
    console.log(re.test(str));
Copier après la connexion
Copier après la connexion

字符串方法-match

match:将匹配到的字符放到一个数组中。

string.match(正则);

当匹配到的字符只有一个的时候,会显示出多个属性

index: 匹配字符的位置

input: 所有内容

而length为1

  • match如果找不到返回null

    var str = 'das37213dsa321hjkh321321';
    console.log(str.match(/\d+/g))
Copier après la connexion
Copier après la connexion

search:找到(可以指定也可以正则匹配)匹配的字符位置。

sting.search(字符串||正则);

    var str = 'aacabca523c';
    console.log(str.search(/\d/));
Copier après la connexion
Copier après la connexion
  • search如果找不到返回-1

字符串方法-replace

replace:replace

string.replace(要替换谁||可以用正则,替换成什么||函数);

返回值为替换好的字符串。

注意:
如果使用函数,那么一定要有retrun,不然为undefind

一般情况下

函数内的第一个参数是当前匹配的字符。

函数内的第二个参数是当前匹配的索引值。

函数内的第三个参数是当前总的字符串。

函数内的第四个以后参数都为undefined。

    var str = '中国共产党,习近平总书记说:“法轮功是邪教!”';
    str.replace(/中国共产党|习近平|法轮功|邪教/g,function($0,$1,$2,$3,$4){
        console.log($0,$1,$2,$3,$4);
    });
Copier après la connexion
Copier après la connexion

子项 - ()

从左往右数

如果正则中有子项

从函数的第一个参数之后就是匹配到的子项值,
当参数的个数等于子项个数+1的时候,之后都为正常模式下的参数了(比如:索引,整个字符,undefined..)

    var str = '2017/2/17';
    var str = str.replace(/(\d+)\D+(\d+)\D+(\d+)/,function($0,$1,$2,$3){
        //console.log($1,$2,$3);
        return $1 + '年' + $2 + '月' + $3 + '日';
    });
    
    console.log(str);
Copier après la connexion
Copier après la connexion

子项重定向

    var str = 'ssssssssaaaaaabbbbbb';
    str.replace(/(\w)\1+/g,function($0,$1){
        console.log($1);
    });
Copier après la connexion
Copier après la connexion

相关推荐:

最全的前端常用正则表达式汇总

正则表达式的的实现步骤

php正则表达式入门详解

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

Video Face Swap

Video Face Swap

Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

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)

Collection d'aide-mémoire Python, quels points de connaissances maîtrisez-vous ? Collection d'aide-mémoire Python, quels points de connaissances maîtrisez-vous ? Apr 26, 2023 pm 10:49 PM

Python est actuellement le langage de programmation le plus populaire. Je pense qu'un grand nombre d'amis novices rejoindront les rangs de l'apprentissage chaque jour. Cependant, même si une langue est facile à apprendre, il existe encore de nombreux concepts et connaissances de base. Pour un novice, il est toujours difficile de maîtriser autant de choses à la fois. Aujourd'hui, j'ai rassemblé de nombreuses aide-mémoire sur les connaissances liées à Python, qui peuvent être considérées comme exhaustives. À l'avenir, maman n'aura plus à s'inquiéter du fait que tout le monde ne puisse se souvenir d'aucun point de connaissance ! Notions de base de Python Notions de base de Python Cette aide-mémoire contient toutes les connaissances de base de Python, des types de données variables aux chaînes de liste, de l'installation de l'environnement à l'utilisation des bibliothèques couramment utilisées, elle peut être considérée comme complète. Python pour débutants

Comment remplacer une chaîne commençant par quelque chose avec une expression régulière php Comment remplacer une chaîne commençant par quelque chose avec une expression régulière php Mar 24, 2023 pm 02:57 PM

Les expressions régulières PHP sont un outil puissant pour le traitement et la conversion de texte. Il peut gérer efficacement les informations textuelles en analysant le contenu du texte et en le remplaçant ou en l'interceptant selon des modèles spécifiques. Parmi elles, une application courante des expressions régulières consiste à remplacer des chaînes commençant par des caractères spécifiques. Nous expliquerons cela comme suit.

Comment faire correspondre plusieurs mots ou chaînes à l'aide de l'expression régulière Golang ? Comment faire correspondre plusieurs mots ou chaînes à l'aide de l'expression régulière Golang ? May 31, 2024 am 10:32 AM

Les expressions régulières Golang utilisent le caractère barre verticale | pour faire correspondre plusieurs mots ou chaînes, séparant chaque option comme une expression OU logique. Par exemple : correspond à "fox" ou "dog" : fox|dog correspond à "quick", "brown" ou "lazy" : (quick|brown|lazy) correspond à "Go", "Python" ou "Java" : Go| Python |Java fait correspondre des mots ou des codes postaux à 4 chiffres : ([a-zA

Révéler les secrets du mécanisme de mise en cache HTML : points de connaissances essentiels Révéler les secrets du mécanisme de mise en cache HTML : points de connaissances essentiels Jan 23, 2024 am 08:51 AM

Le secret du mécanisme de mise en cache HTML : points de connaissances essentiels, des exemples de code spécifiques sont requis Dans le développement Web, les performances ont toujours été une considération importante. Le mécanisme de mise en cache HTML est l'une des clés pour améliorer les performances des pages Web. Cet article révélera les principes et les compétences pratiques du mécanisme de mise en cache HTML et fournira des exemples de code spécifiques. 1. Principe du mécanisme de mise en cache HTML Lors du processus d'accès à une page Web, le navigateur demande au serveur d'obtenir la page HTML via le protocole HTTP. Le mécanisme de mise en cache HTML consiste à mettre en cache les pages HTML dans le navigateur

Comment utiliser des expressions régulières pour supprimer les caractères chinois en php Comment utiliser des expressions régulières pour supprimer les caractères chinois en php Mar 03, 2023 am 10:12 AM

Comment supprimer le chinois en utilisant les règles habituelles en PHP : 1. Créez un exemple de fichier PHP ; 2. Définissez une chaîne contenant le chinois et l'anglais ; 3. Utilisez "preg_replace('/([\x80-\xff]*)/i', '',$a);" La méthode standard peut supprimer les caractères chinois des résultats de la requête.

Comment utiliser la correspondance régulière pour supprimer les balises HTML en php Comment utiliser la correspondance régulière pour supprimer les balises HTML en php Mar 21, 2023 pm 05:17 PM

Dans cet article, nous apprendrons comment supprimer les balises HTML et extraire le contenu en texte brut des chaînes HTML à l'aide d'expressions régulières PHP. Pour montrer comment supprimer les balises HTML, définissons d'abord une chaîne contenant des balises HTML.

Comment vérifier si une URL est le protocole HTTPS à l'aide de PHP regex Comment vérifier si une URL est le protocole HTTPS à l'aide de PHP regex Jun 24, 2023 am 08:16 AM

La sécurité des sites Web attire de plus en plus l’attention, et l’utilisation du protocole HTTPS pour garantir la sécurité de la transmission des données est devenue une partie importante du développement actuel des sites Web. En développement PHP, comment utiliser des expressions régulières pour vérifier si l'URL est le protocole HTTPS ? Découvrons-le ci-dessous. Expression régulière L'expression régulière est une expression utilisée pour décrire des règles. C'est un outil puissant pour traiter le texte et est largement utilisée dans la correspondance, la recherche et le remplacement de texte. Dans le développement PHP, nous pouvons utiliser des expressions régulières pour faire correspondre http dans l'URL

Partage de conseils sur l'utilisation des expressions régulières PHP pour implémenter la fonction de remplacement chinois Partage de conseils sur l'utilisation des expressions régulières PHP pour implémenter la fonction de remplacement chinois Mar 24, 2024 pm 05:57 PM

Conseils sur l'utilisation des expressions régulières PHP pour implémenter la fonction de remplacement du chinois. Dans le développement Web, nous rencontrons souvent des situations où le contenu chinois doit être remplacé. En tant que langage de script côté serveur populaire, PHP fournit de puissantes fonctions d'expression régulière, qui peuvent facilement réaliser un remplacement par le chinois. Cet article partagera quelques techniques d'utilisation d'expressions régulières pour implémenter la substitution chinoise en PHP et fournira des exemples de code spécifiques. 1. Utilisez la fonction preg_replace pour implémenter le remplacement chinois. La fonction preg_replace en PHP peut être utilisée.

See all articles