Comment implémenter un remplacement de contenu régulier en PHP : créez d'abord un exemple de fichier PHP ; puis définissez un ensemble de chaînes et enfin transmettez "preg_replace('/http://www....com/_blog/ ; /' ...)" une expression régulière peut remplacer le contenu.
L'environnement d'exploitation de cet article : système Windows 7, PHP version 7.1, ordinateur Dell G3.
Fonction PHP preg_replace() remplacement régulier de toutes les chaînes qualifiées
Remplacement régulier PHP preg_replace(), différent du remplacement régulier JavaScript, PHP preg_replace() La valeur par défaut est de remplacer tous les éléments qui correspondent à la condition .
Les expressions régulières dans la plupart des langues sont similaires, mais il existe également des différences subtiles.
Expression régulière PHP
Caractères réguliers
Explication régulière
Marquer le caractère suivant comme caractère spécial, Ou un caractère littéral, une référence arrière ou un caractère d'échappement octal. Par exemple, « n » correspond au caractère « n ». "\n" correspond à un caractère de nouvelle ligne. La séquence "\" correspond à "" et "(" correspond à "(".
^
correspond au début de la chaîne d'entrée. Si l'objet RegExp est défini Attribut multiligne, ^ correspond également à la position après "n" ou "r"
$
correspond à la position de fin de la chaîne d'entrée s'il est défini. correspond également à la position avant "n" ou "r".
*
correspond à la sous-expression précédente zéro ou plusieurs fois zo* peut correspondre à "z" et ". zoo". *Équivalent à {0,}
+
correspond à la sous-expression précédente une ou plusieurs fois. . Par exemple, "zo+" peut correspondre à "zo" mais pas à "z". + est équivalent à {1,}
?
Correspond à la sous-expression précédente zéro ou une fois. Par exemple, "do(es)?" dans « fait ». ? équivaut à {0,1}. "o{2}" ne peut pas correspondre au "o" dans "Bob", cependant. Peut correspondre à deux o dans "food". entier. Par exemple, "o{. 2,}" ne peut pas correspondre au "o" dans "Bob", mais il peut correspondre à tous les o dans "foooood". o{0,}" est équivalent à "o*".
{n,m>
m et n sont tous deux des entiers non négatifs, où n< =m correspond à au moins n fois. Par exemple, "o{1,3}" correspondra aux trois premiers o de "fooooood". Notez la virgule et les deux chiffres. Il ne peut y avoir d'espaces entre
?
lorsque ce caractère est suivi d'un autre limiteur (*,+,?,{ n},{n, }, {n,m}), le mode de correspondance est non gourmand. Le mode non gourmand correspond le moins possible à la chaîne recherchée, tandis que le mode gourmand par défaut correspond à la plus grande partie de la chaîne recherchée. autant que possible. Par exemple, pour la chaîne "oooo", "o?" correspondra à un seul "o", tandis que "o+" correspondra à tous les "o"
. Les points
correspondent. N'importe quel caractère sauf "n". Pour faire correspondre n'importe quel caractère incluant "n", utilisez un modèle comme "[sS]"
(motif)<. > Faites correspondre le modèle et obtenez cette correspondance. La correspondance obtenue peut être obtenue à partir de la collection Matches générée, en utilisant la collection SubMatches dans VBScript et l'attribut $0...$9 dans JScript. Pour faire correspondre les caractères entre parenthèses, utilisez "(" ou ")".
(?:pattern)
correspond au modèle mais n'obtient pas le résultat correspondant, ce qui signifie qu'il s'agit d'une correspondance non obtenue et n'est pas stockée pour une utilisation ultérieure. Ceci est utile lors de la combinaison de parties d'un motif à l'aide du caractère ou "(|)". Par exemple, « industr(?:y|ies) » est une expression plus simple que « industry|industries ».
(?=motif)
Recherche positive positive
, correspond à la chaîne de recherche au début de tout modèle de correspondance de chaîne. Il s'agit d'une correspondance sans récupération, c'est-à-dire qu'il n'est pas nécessaire de récupérer la correspondance pour une utilisation ultérieure. Par exemple, « Windows(?=95|98|NT|2000) » peut correspondre à « Windows » dans « Windows2000 », mais ne peut pas correspondre à « Windows » dans « Windows3.1 ». La prélecture ne consomme pas de caractères, c'est-à-dire qu'après une correspondance, la recherche de la correspondance suivante commence immédiatement après la dernière correspondance, plutôt qu'après le caractère contenant la prélecture.
(?!modèle)
Recherche négative directe
, correspond à la chaîne de recherche au début de toute chaîne qui ne correspond pas au modèle. Il s'agit d'une correspondance sans récupération, c'est-à-dire qu'il n'est pas nécessaire de récupérer la correspondance pour une utilisation ultérieure. Par exemple, « Windows(?!95|98|NT|2000) » peut correspondre à « Windows » dans « Windows3.1 », mais ne peut pas correspondre à « Windows » dans « Windows2000 ».
(?<=motif)
Pré-vérification positive inversée
, similaire à la pré-vérification positive avant, mais dans le sens opposé . Par exemple, "(?<=95|98|NT|2000)Windows" peut correspondre à "Windows" dans "2000Windows", mais ne peut pas correspondre à "Windows" dans "3.1Windows".
(?
Aperçu négatif inversé
, similaire à l'aperçu négatif direct, mais dans la direction opposée. Par exemple, "(?
x|y
correspond à x ou y. Par exemple, « z|food » correspond à « z » ou « food ». "(z|f)ood" correspond à "zood" ou "food".
[xyz] jeu de caractères. Correspond à l'un des caractères contenus. Par exemple, « [abc] » correspondrait au « a » dans « plain ».
[^xyz]
Un ensemble de caractères de valeur négative. Correspond à n’importe quel caractère non inclus. Par exemple, "[^abc]" correspondrait à "plin" dans "plain".
[a-z]
plage de caractères. Correspond à n’importe quel caractère dans la plage spécifiée. Par exemple, "[a-z]" correspond à n'importe quel caractère alphabétique minuscule compris entre "a" et "z". Remarque : Ce n'est que lorsque le trait d'union se trouve à l'intérieur du groupe de caractères et entre deux caractères qu'il peut représenter la plage de caractères ; s'il apparaît au début du groupe de caractères, il ne peut représenter que le trait d'union lui-même
<. 🎜>
[^a-z]
Plage de caractères négative. Correspond à tout caractère ne se trouvant pas dans la plage spécifiée. Par exemple, "[^a-z]" correspond à tout caractère qui n'est pas compris entre "a" et "z".
b
correspond à une limite de mot, qui fait référence à la position entre un mot et un espace. Par exemple, « erb » peut correspondre au « er » dans « never » mais pas au « er » dans « verb ».
B
correspond aux limites autres que les mots. "erB" correspond au "er" dans "verb", mais pas au "er" dans "jamais".
cx
correspond au caractère de contrôle spécifié par x. Par exemple, cM correspond à un caractère Control-M ou à un retour chariot. La valeur de x doit être A-Z ou a-z. Sinon, traitez c comme un caractère « c » littéral.
d
correspond à un caractère numérique. Équivalent à [0-9].
D
correspond à un caractère non numérique. Équivalent à [^0-9].
f
correspond à un saut de formulaire. Équivalent à x0c et cL.
n
correspond à un caractère de nouvelle ligne. Équivalent à x0a et cJ.
r
correspond à un caractère de retour chariot. Équivalent à x0d et cM.
s
correspond à n'importe quel caractère d'espacement, y compris les espaces, les sauts de ligne, les tabulations, les sauts de formulaire, les espaces chinois pleine largeur, etc. Équivalent à [frntv].
S
correspond à tout caractère autre qu'un espace. Équivalent à [^ frntv].
t
correspond à un caractère de tabulation. Équivalent à x09 et cI.
v
correspond à un caractère de tabulation verticale. Équivalent à x0b et cK.
w
correspond à n'importe quel caractère de mot, y compris un trait de soulignement. Équivalent à "[A-Za-z0-9_]".
W
correspond à n'importe quel caractère autre qu'un mot. Équivalent à "[^A-Za-z0-9_]".
xn
correspond à n, où n est la valeur d'échappement hexadécimale. La valeur d’échappement hexadécimale doit comporter exactement deux chiffres. Par exemple, « x41 » correspond à « A ». "x041" équivaut à "x04&1". Le codage ASCII peut être utilisé dans les expressions régulières.
num
correspond à num, où num est un entier positif. Une référence au match obtenu. Par exemple, "(.)1" correspond à deux caractères identiques consécutifs.
n
identifie une valeur d'échappement octale ou une référence arrière. n est une référence vers l'arrière si n est précédé d'au moins n sous-expressions récupérées. Sinon, si n est un nombre octal (0-7), alors n est une valeur d'échappement octale.
nm
Identifie une valeur d'échappement octale ou une référence arrière. Si nm est précédé d'au moins nm get sous-expressions, nm est une référence vers l'arrière. Si nm est précédé d'au moins n, alors n est une référence vers l'arrière suivie du littéral m. Si aucune des conditions précédentes n'est remplie et si n et m sont tous deux des nombres octaux (0-7), nm correspondra à la valeur d'échappement octale nm.
nml
Si n est un nombre octal (0-7) et m et l sont tous deux des nombres octaux (0-7), faites correspondre la valeur d'échappement octale nml.
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
PHP 8.4 apporte plusieurs nouvelles fonctionnalités, améliorations de sécurité et de performances avec une bonne quantité de dépréciations et de suppressions de fonctionnalités.
Ce guide explique comment installer PHP 8.4 ou mettre à niveau vers PHP 8.4 sur Ubuntu, Debian ou leurs dérivés. Bien qu'il soit possible de compiler PHP à partir des sources, son installation à partir d'un référentiel APT comme expliqué ci-dessous est souvent plus rapide et plus sécurisée car ces référentiels fourniront les dernières corrections de bogues et mises à jour de sécurité à l'avenir.
Visual Studio Code, également connu sous le nom de VS Code, est un éditeur de code source gratuit – ou environnement de développement intégré (IDE) – disponible pour tous les principaux systèmes d'exploitation.
Avec une large collection d'extensions pour de nombreux langages de programmation, VS Code peut être c
Si vous êtes un développeur PHP expérimenté, vous aurez peut-être le sentiment d'y être déjà allé et de l'avoir déjà fait. Vous avez développé un nombre important d'applications, débogué des millions de lignes de code et peaufiné de nombreux scripts pour réaliser des opérations.
Ce tutoriel montre comment traiter efficacement les documents XML à l'aide de PHP. XML (Language de balisage extensible) est un langage de balisage basé sur le texte polyvalent conçu à la fois pour la lisibilité humaine et l'analyse de la machine. Il est couramment utilisé pour le stockage de données et
JWT est une norme ouverte basée sur JSON, utilisée pour transmettre en toute sécurité des informations entre les parties, principalement pour l'authentification de l'identité et l'échange d'informations. 1. JWT se compose de trois parties: en-tête, charge utile et signature. 2. Le principe de travail de JWT comprend trois étapes: la génération de JWT, la vérification de la charge utile JWT et l'analyse. 3. Lorsque vous utilisez JWT pour l'authentification en PHP, JWT peut être généré et vérifié, et les informations sur le rôle et l'autorisation des utilisateurs peuvent être incluses dans l'utilisation avancée. 4. Les erreurs courantes incluent une défaillance de vérification de signature, l'expiration des jetons et la charge utile surdimensionnée. Les compétences de débogage incluent l'utilisation des outils de débogage et de l'exploitation forestière. 5. L'optimisation des performances et les meilleures pratiques incluent l'utilisation des algorithmes de signature appropriés, la définition des périodes de validité raisonnablement,
Une chaîne est une séquence de caractères, y compris des lettres, des nombres et des symboles. Ce tutoriel apprendra à calculer le nombre de voyelles dans une chaîne donnée en PHP en utilisant différentes méthodes. Les voyelles en anglais sont a, e, i, o, u, et elles peuvent être en majuscules ou en minuscules.
Qu'est-ce qu'une voyelle?
Les voyelles sont des caractères alphabétiques qui représentent une prononciation spécifique. Il y a cinq voyelles en anglais, y compris les majuscules et les minuscules:
a, e, i, o, u
Exemple 1
Entrée: String = "TutorialSpoint"
Sortie: 6
expliquer
Les voyelles dans la chaîne "TutorialSpoint" sont u, o, i, a, o, i. Il y a 6 yuans au total
Liaison statique (statique: :) implémente la liaison statique tardive (LSB) dans PHP, permettant à des classes d'appel d'être référencées dans des contextes statiques plutôt que de définir des classes. 1) Le processus d'analyse est effectué au moment de l'exécution, 2) Recherchez la classe d'appel dans la relation de succession, 3) il peut apporter des frais généraux de performance.
Quelles sont les méthodes magiques de PHP? Les méthodes magiques de PHP incluent: 1. \ _ \ _ Construct, utilisé pour initialiser les objets; 2. \ _ \ _ Destruct, utilisé pour nettoyer les ressources; 3. \ _ \ _ Appel, gérer les appels de méthode inexistants; 4. \ _ \ _ GET, Implémentez l'accès à l'attribut dynamique; 5. \ _ \ _ SET, Implémentez les paramètres d'attribut dynamique. Ces méthodes sont automatiquement appelées dans certaines situations, améliorant la flexibilité et l'efficacité du code.