Questions régulières que vous rencontrerez lors des entretiens
正则表达式,有木有人像我一样,学了不知道多少遍,学的时候看起来都懂了,过一段时间就又忘的差不多了,等真正要用到的时候,还是一脸懵逼。说到底还是练习的不够多,一直处于只看不做的程度上。所以搜集了这些正则习题,来保证温故而知新。建议读者看完题目后可以自己先做一做,然后再看实现方法。本文不讲基础,只记录习题,如果后续有新的题目,也会保持更新。
1、var s1 = "get-element-by-id"; 给定这样一个连字符串,写一个function转换为驼峰命名法形式的字符串 getElementById
var f = function(s) { return s.replace(/-\w/g, function(x) { return x.slice(1).toUpperCase(); }) }
2、判断字符串是否包含数字
function containsNumber(str) { var regx = /\d/; return regx.text(str); }
3、判断电话号码
function isPhone(tel) { var regx = /^1[34578]\d{9}$/; return regx.test(tel); }
4、判断是否符合指定格式
给定字符串str,检查其是否符合如下格式
XXX-XXX-XXXX
其中X为Number类型
function matchesPattern(str) { return /^(\d{3}-){2}\d{4}&/.test(str); }
5、判断是否符合USD格式
给定字符串 str,检查其是否符合美元书写格式
以 $ 开始
整数部分,从个位起,满 3 个数字用 , 分隔
如果为小数,则小数部分长度为 2
正确的格式如:$1,023,032.03 或者 $2.03,错误的格式如:$3,432,12.12 或者 $34,344.3**
function isUSD(str) { var regx = /^\$\d{1,3}(,\d{3})*(\.\d{2})?$/; return regx.test(str); }
6、JS实现千位分隔符
function format(number) { var regx = /\d{1,3}(?=(\d{3})+$)/g; return (number + '').replace(regx, '$&,') // $&表示与regx相匹配的字符串 }
7、获取 url 参数
获取 url 中的参数
指定参数名称,返回该参数的值 或者 空字符串
不指定参数名称,返回全部的参数对象 或者 {}
如果存在多个同名参数,则返回数组
function getUrlParam(url, key) { var arr = {}; url.replace(/\??(\w+)=(\w+)&?/g, function(match, matchKey, matchValue) { if (!arr[matchKey]) { arr[matchKey] = matchValue; } else { var temp = arr[matchKey]; arr[matchKey] = [].concat(temp, matchValue); } }); if (!key) { return arr; } else { for (ele in arr) { if (ele = key) { return arr[ele]; } } return ''; } }
8、验证邮箱
function isEmail(email) { var regx = /^([a-zA-Z0-9_\-])+@([a-zA-Z0-9_\-])+(\.[a-zA-Z0-9_\-])+$/; return regx.test(email); }
9、验证身份证号码
身份证号码可能为15位或18位,15位为全数字,18位中前17位为数字,最后一位为数字或者X
function isCardNo(number) { var regx = /(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/; return regx.test(number); }
10、匹配汉字
var regx = /^[\u4e00-\u9fa5]{0,}$/;
11、去除首尾的'/'
var str = '/asdf//'; str = str.replace(/^\/*|\/*$/g, '');
12、判断日期格式是否符合 '2017-05-11'的形式,简单判断,只判断格式
var regx = /^\d{4}\-\d{1,2}\-\d{1,2}$/
13、判断日期格式是否符合 '2017-05-11'的形式,严格判断(比较复杂)
var regx = /^(?:(?!0000)[0-9]{4}-(?:(?:0[1-9]|1[0-2])-(?:0[1-9]|1[0-9]|2[0-8])|(?:0[13-9]|1[0-2])-(?:29|30)|(?:0[13578]|1[02])-31)|(?:[0-9]{2}(?:0[48]|[2468][048]|[13579][26])|(?:0[48]|[2468][048]|[13579][26])00)-02-29)$/;
14、IPv4地址正则
var regx = /^(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)$/;
15、十六进制颜色正则
var regx = /^#?([a-fA-F0-9]{6}|[a-fA-F0-9]{3})$/;
16、车牌号正则
var regx = /^[京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼使领A-Z]{1}[A-Z]{1}[A-Z0-9]{4}[A-Z0-9挂学警港澳]{1}$/;
17、过滤HTML标签
var str="<p>dasdsa</p>nice <br> test</br>" var regx = /<[^<>]+>/g; str = str.replace(regx, '');
18、密码强度正则,最少6位,包括至少1个大写字母,1个小写字母,1个数字,1个特殊字符
var regx = /^.*(?=.{6,})(?=.*\d)(?=.*[A-Z])(?=.*[a-z])(?=.*[!@#$%^&*? ]).*$/;
19、URL正则
var regx = /^((https?|ftp|file):\/\/)?([\da-z\.-]+)\.([a-z\.]{2,6})([\/\w \.-]*)*\/?$/;
20、匹配浮点数
var regx = /^-?([1-9]\d*\.\d*|0\.\d*[1-9]\d*|0?\.0+|0)$/;
21、
写一个正则表达式,匹配 "
var str = '<OPTION value="待处理">待处理</OPTION>'; var regx = /^<.*?>/; var resiult = regx.exec(str)[0];
最后推荐一个练习正则的网站 regulex%7B2%7D%5Cd%7B4%7D%26),可以查看正则匹配的走向
如果喜欢请关注我的Github,给个Star吧,我会定期分享一些JS中的知识,^_^
相关推荐:
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!

Outils d'IA chauds

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

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

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

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

Sujets chauds

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

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

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.

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.

Lors du développement de sites Web et d’applications, il est crucial de vérifier l’exactitude et le format des données saisies. En PHP, les expressions régulières sont un outil puissant qui peut être utilisé pour valider et formater différents types de données. Parmi eux, la validation des données d’entrée sous forme de nombres est une exigence très courante. Dans cet article, nous verrons comment utiliser les expressions régulières en PHP pour valider les données d'entrée sous forme de nombres.

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

Pourquoi rencontrez-vous des problèmes pour installer PHP8 ? Ces dernières années, PHP a été l’un des langages privilégiés pour développer des sites Web et des applications Web. En tant que langage de programmation open source populaire, il possède des fonctionnalités étendues et un solide soutien communautaire. Cependant, certaines personnes peuvent rencontrer des problèmes lors de l'installation avec PHP8. Cet article explorera certaines des raisons pour lesquelles vous pouvez rencontrer des problèmes d'installation de PHP8 et fournira des exemples de code spécifiques pour vous aider à résoudre ces problèmes. Tout d’abord, assurez-vous que votre système d’exploitation répond à la configuration minimale requise pour PHP8. PHP8 requis
