首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

前端基础-正则语法(元字符)

第2章 正则语法-元字符 正则表达式的字符: 元字符:一些具有特殊含义的特殊符号。 普通字符:包括所有大写和小写字母、所有数字、所有标点符号和一些其他符号。...正则表达式三步走 ① 匹配符(查什么)(等价符、字符簇、修饰符、转义符) ② 限定符(查多少) ③ 定位符(从哪查) 1、限定符 限定符(量词)用来指定正则表达式的一个给定组件必须要出现多少次才能满足匹配...\d \w var str = 'php1js22'; var res = str.match(/\d+/g);//匹配所有的数字 console.log(res);//["1", "22"] 3、定位符...‘er\B’ 能匹配 “verb” 的 ‘er’,但不能匹配 “never” 的 ‘er’。...如果匹配的字符串在正则中有特殊含义的都必须加转义字符。如[]$.*?+|^{}() 但是不要乱加转义。 var str = 'php.php';//目标字符串包含普通字符.

69420
您找到你想要的搜索结果了吗?
是的
没有找到

PHP正则表达式之量词、元字符、修饰符

介绍 1、正则表达式包含三种元素分别为:量词、元字符、修饰符 2、前导字符串:就是符号前面的一个字符或字符串 量词 + 匹配任何至少包含一个前导字符串 * 匹配任何包含零个或多个前导字符串 ?...echo preg_match('/a|b/','b'); //返回1 echo preg_match('/(abc)+/','abcd'); //返回1 元字符...元字符 说明 [a-z] 匹配任何包含小写字母a-z的字符串 [A-Z] 匹配任何包含大写字母A-Z的字符串 [0-9] 匹配任何包含0-9的字符串 [abc] 匹配任何包含小写字母...匹配任何包含数字字符 \D 匹配任何非数字字符 \s 匹配任何空白字符 \S 匹配任何非空白字符 \b 匹配是否到达了单词边界 \B 匹配没有到达了单词边界 \ 匹配正则的特殊字符...echo preg_match('/\$/', '$');//返回1 修饰符 修饰符 说明 i 完全不区分大小写 m 可以采用多行识别,遇到换行也承认匹配规则 x 忽略掉规则模式的空白字符

89542

正则表达式(一):常用元字符

正则是什么 正则表达式是一种字符串模式,用来对某些规则的文本内容进行处理。利用字符串构成成的数据结构,来完成对文本内容的匹配。...经常可以看到正则表达式的句子里包含了一些\d、\w和()之类的符号,这些特殊格式的符号可以看做正则结构的元素,这些符号也成之为元字符,下面介绍下这些元字符的作用。...常用元字符 下面列出正则中常用元字符及表示意思,这些通用元字符的使用在不同语言中表达作用是相同的。...,分组匹配的内容可以在后续的正则重复使用,只需要指定分组的序号即可。...符号 代表意思 使用场景 [] 匹配范围 [a-zA-Z] 匹配单个英文字母 ^ 在上面的匹配位置元字符,仅仅介绍了匹配字符串开头位置的作用,这里另外一个作用就是放在范围元字符,起到取反的作用

2.5K50

python五十七课——正则表达式(元字符

,取值范围:[0,9]之间的任何一个值 d:表示一位,取值范围:[0,9]之间的任何一个值 D:对d取反(匹配除了数字字符以外的所有字符) [13579]:表示一位,取值范围:1、3、5、7、9的任何一个值...[abcdef]:表示一位,取值范围:a、b、c、d、e、f的任何一个值 [a-z]:表示一位,取值范围:[a,z]之间的任何一个值 [A-Z]:表示一位,取值范围:[A,Z]之间的任何一个值...[0-9a-zA-Z_]:表示一位,取值范围:0~9或者a~z或者A~Z或者_的任何一个值 w:表示一位,取值范围:0~9或者a~z或者A~Z或者_的任何一个值 W:对w取反 ....:匹配除了换行符以外的所有字符 演示正则元字符的使用: import re regex=r'[0-9]' regex=r'd' regex=r'dd' regex=r'Dd' regex=r'w'

49120

正则表达式字符组元字符量词

一.正则表达式能干什么?   ...1.从大段的文字中找到符合规则的内容   2.判断某个字符串是否完全符合规则 二.字符组-- [] 写在括号的内容,都出现在下面的某一个字符的位置上都是符合规则的    [0-9] 匹配数字    ...匹配小写字母    [A-Z] 匹配大写字母    [a-zA-Z] 匹配大小写字母    [a-zA-Z0-9] 匹配大小写字母+数字    [a-zA-Z0-9_] 匹配数字字母下滑线 三.元字符...表示匹配 除换行符之外的所有字符   [] 只要出现在括号内的内容都可以被匹配   [^] 只要不出现在括号的内容都可以被匹配   有一些有特殊意义的元字符进入字符组中会回复它本来的意义 : ....正则表达式的匹配特点 : 贪婪匹配   它会在允许的范围内取最长的结果   非贪婪模式/惰性匹配 : 在量词的后面加上?      .*?x 匹配任意非换行符字符任意长度 直到遇到x就停止

98010

正则表达式必知必会 - 使用元字符

一、转义         元字符是一些在正则表达式里有着特殊含义的字符。英文句号 . 是一个元字符,它可以用来匹配任意单个字符。类似地,左方括号 [ 也是一个元字符,它标志着一个字符集合的开始。...在正则表达式,字符 \ 的后面总是跟着另一个字符。 二、匹配空白字符         元字符大致可以分为两种:一种是用来匹配文本的,比如 .,另一种是正则表达式语法的组成部分,比如 [ 和 ]。...随着学习的深入,将发现越来越多的这两种元字符,而现在要介绍的是一些用来匹配空白字符的元字符。在进行正则表达式搜索的时候,经常会需要匹配文本的非打印空白字符。比如可能想把所有的制表符或换行符找出来。...直接在正则表达式输入这类字符是件棘手的事,可以借助下表列出的特殊元字符。...三、匹配特定的字符类型         字符集合(匹配一组字符的某一个)是最常见的匹配形式,而一些常用的字符集合可以用特殊元字符来代替。这些元字符匹配的是某一类字符。

20050

PHPPCRE正则解析代码详解

这里就不是字符集的事儿了,在PHP很多函数的处理默认是unicode的UTF-8编码格式。那么废话不多说,直接开始正题。 二、PHP函数mb_split解析 <?...); 打印结果如下: Array( [0] = 测 [1] = 试 [2] = 一 [3] = 下 ) 四、PCRE的/u解析 在PHP正则的定界符可以为#、%、...在一个正则中有时后面会有些修饰符。那么他们都是什么意思呢? 比如: %[\x{4e00}-\x{9fa5}]+%u 其中后面的修饰符u代码表以正则匹配以utf-8的编码格式匹配。 例子一: <?...在PHP正则\x用来表示16进制。...中文的UNICODE码点在4E00 – 9FFF (这里说的都是16进制) 所以,正则匹配写法就是区间[],[\x{4E00}-\x{9FFF}] 这两个正则的效果都是一样的。

1.2K40

PHP小课堂】PHPPRGE正则函数的学习

PHPPRGE正则函数的学习 正则表达式的作用想必不用我多说了,大家在日常的开发或多或少都会接触到。特别是对于一些登录(邮箱、手机号)以及网页爬虫来说,正则表达式就是神器一般的存在。...在 PHP ,有两种处理正则表达式的函数,今天我们就来学习其中的一种。...PCRE 的函数库对 perl 支持非常友好,同时,它也是支持 POSIX 扩展语法的正则表达式。具体的正则语法规则和模式修饰符相关的信息可以在文末的链接查阅。.../2021/03/source/6.PHPPRGE正则函数的学习.php on line 332 // 1 // print_r(preg_last_error_msg()); // php8 而在...不过我的电脑上还没有安装 PHP8 所以这块内容就不展示了。 总结 PHP正则操作的函数就这些,但正则真正的精髓其实是在于正则表达式怎么写这一块。

11210

正则表达式-基本概念与简单元字符

正则表达式的基本语法 正则表达式使用字符串来描述字符串,也就是说跟编程语言,正则表达式是有自己的关键字的,学会这些关键字是我们入门正则的第一步,然后在使用领会正则表达式的思想,一步步进阶。...匹配单个字符的元字符 我们首先来看一下匹配一个字符的关键字: 元字符 名称 含义 ....计数元字符 有了匹配单个字符的关键字,匹配多个就要用到计数元字符,常用的有下面这些: 元字符 名称 含义 区间表示 ?...*+这三个元字符是可以使用{}来模拟的,不过在一些正则流派里不支持{}元字符,我们只能使用这三个。 在为加?...,譬如\d有的正则引擎可以匹配Unicode的数字,也就是说中文六也是有可能匹配的,这个可以参考各自的语言工具书(不过一般这样用没啥问题)。

71140

正则表达式一元字符与字符组

3.1  字符组元字符 在字符组内部,字符组元字符   '-' (连字符)表示一个范围,如下,''和''是一样的!...符       用于匹配任意字符,相当于一个占位符 元字符"."号是用来匹配任意字符的字符组的简便写法,如果我们在表达式需要一个"匹配任意字符"的占位符,用点就很方便。...5  |  符 "|"符是一个非常简洁的元字符,他的意思是"或"。...gr[ea]y和gr(e|a)y这两个例子可能会让人觉得多选结构和字符组本身没多大区别,但是注意,一个字符组只能匹配单词的一个字母,而每个多选结构自身可能都是完整的正则表达式,可以匹配任意长度的文本!...该功能并不是正则表达式语言的一部分,确实很多工具软件提供的有用的特性,egerp的命令行参数"-i"表示进行忽略大小写的匹配,把-i写在正则表达式之前; 7   单词分界符

85470

使用PHP正则抓取页面的网址

最近有一个任务,从页面抓取页面中所有的链接,当然使用PHP正则表达式是最方便的办法。要写出正则表达式,就要先总结出模式,那么页面的链接会有几种形式呢?...要写出正确的正则表达式,就必须要了解我们查找的对象的模式。 先说绝对链接,也叫作URL(Uniform Resource Locator),标识了互联网上的唯一资源。...FTP协议,也可以包含用户名和密码,本文就不考虑了。 路径和文件名,一般以 / 分割,指出到达这个文件的路径和文件本身的名称。...那么正则表达式就可以写出来了。 /(http|https):\/\/([\w\d\-_]+[\.\w\d\-_]+)[:\d+]?([\/]?...写到这个时候,基本上大部分的网址都能匹配到了,但是对于URL带有参数的还不能抓取,这样有可能造成再次访问的时候页面报错。关于参数RFC1738规范要求是用?

3.1K20

PHP正则的捕获组与非捕获组

今天遇到一个正则匹配的问题,忽然翻到有捕获组的概念,手册上也是一略而过,百度时无意翻到C#和Java中有对正则捕获组的特殊用法,搜索关键词有PHP时竟然没有相关内容,自己试了一下,发现在PHP也是可行的...什么是捕获组 我们先看一下PHP正则匹配函数 int preg_match ( string $pattern , string $subject [, array &$matches [, int...string '4' (length=1) 2 => string '98' (length=2) 3 => string '56' (length=2) 现在我们知道了什么是捕获组,捕获组是正则表达示以...捕获组的忽略与命名 我们还可以阻止PHP为匹配组的编号:在匹配组模式前加  ?: $mode = '/a=(\d+)b=(?...那是因为它们有捕获组的特性,在匹配模式的(),但是匹配时,PHP不会为它们编组,它们只会影响匹配结果,并不作为结果输出。 /d(?=xxx)    匹配"后面是xxx的一个数字"。

2K90

PHP核心技术与最佳实践 读书笔记 第三章 正则表达式基础与应用

3.1.1 PHP正则函数 NFA和DFA PHP有两套正则函数 :PCRE库的 preg_ 和POSIX扩展的ereg_(不推荐) 3.1.2 正则表达式的组成 分隔符,表达式和修饰符...由一些特殊字符和非特殊的字符串组成 修饰符:用于开启或者关闭某种功能/模式 3.1.3 测试工具的使用 RegexTester Firefox扩展Regular Expression Tester 3.2 正则表达式元字符...点号.是元字符,匹配除了换行符以外的任意字符。 *同样是元字符,它指定“*”前面的内容可以连续重复使用任意次以使整个表达式得到匹配。...3.2.1 什么是元字符 元字符(Meta-Characters)是正则表达式具有特殊意义的专用字符,用来规定其前导字符在目标对象的出现模式。 元字符 描述 ....3.3.2 转义 Javascript \r\n代表换行 alert("可以换行\r\n第二行"); PHP转义符\ \Q和\E也可以在模式忽略正则表达式元字符 \Q和\

62110

PHP正则的使用

正则表达式,作为一种快速、便捷的处理字符串的工具,在各种编程语言中都有着广泛的用途,通过在PHP的一些使用,下面记录一下关于PHP正则使用的一些技巧。...PHP正则函数: php中有两套正则函数,两者功能差不多,分别为: 一套是由PCRE(Perl Compatible Regular Expression)库提供的。...在PCRE,通常将模式表达式(即正则表达式)包含在两个反斜线“/”之间,如“/apple/”。...正则重要的几个概念有:元字符、转义、模式单元(重复)、反义、引用和断言,这些概念都可以在文章[1]轻松的理解和掌握。...常用的元字符(Meta-character): 元字符     说明 \A       匹配字符串串首的原子 \Z       匹配字符串串尾的原子 \b       匹配单词的边界     /\bis

3.7K30

避免分割字符串的常见错误:正则表达式元字符未转义

原因是正则表达式,一些字符具有特殊含义,例如 |、# 和 $。它们用作元字符(metacharacters),具有特殊的正则表达式含义。如果你想要将它们作为普通字符进行分割,需要进行转义。...如果我们忽视了这一点,就会导致意料之外的结果,并可能给我们的代码带来困惑和错误 在正则表达式,这些字符需要使用反斜杠 \ 进行转义。...正则表达式元字符是具有特殊含义的字符,用于匹配模式的特定字符或字符组合。下面是一些常见的正则表达式元字符元字符 描述 ....() 定义捕获组,用于提取匹配的子字符串或应用操作符 {} 用于指定匹配次数 ^(在字符集中) 用于否定字符集 请注意,这只是一些常见的正则表达式元字符,还有其他更多的元字符和功能可用于复杂的模式匹配...不同的正则表达式引擎可能会略有差异,所以请根据你所使用的具体正则表达式引擎的文档来了解更多的元字符和功能。

30960

PHP正则表达式及模式匹配

PHP对于正则处理文本提供了两种方式,一种是PCRE方式(PCRE库是一个实现了与perl 5在语法和语义上略有差异(详见下文)的正则表达式模式匹配功能的函数集....s(PCRE_DOTALL) 如果设定了此修正符,模式的圆点元字符(.)匹配所有的字符,包括换行符。没有此设定的话,则不包括换行符。这和 Perl 的 /s 修正符是等效的。...“行起始”元字符(^)仅仅匹配字符串的起始,“行结束”元字符($)仅仅匹配字符串的结束,或者最后一个字符是换行符时其前面(除非设定了 D 修正符)。这和 Perl 是一样的。...D (PCRE_DOLLAR_ENDONLY) 如果这个修饰符被设置, 模式元字符美元符号仅仅匹配目标字符串的末尾....参考资料: 1、preg_match_all截取body正则表达式 2、PHP正则表达式匹配多行及模式匹配 3、PHP Manual PCRE模式 @import url(http://www.cnblogs.com

2.9K20

PHP正则表达式的模式修正符

PHP在处理正则表达式的时候,在最后面可以加上诸如/i, /is, /s, /isU的选项,他们都代表什么含义呢? 其实他们是PHP正则表达式的模式修正符,用于对正则表达式的补充。...如果目标字符串没有“/n”字符或者模式没有 ^ 或 ,则设定此修正符没有任何效果。 S (PCRE_DOTALL) 如果没有使用这个模式修正符号,元字符的"."...如果设定了此修正符,模式的圆点元字符(.)匹配所有的字符,包括换行符。没有此设定的话,则不包括换行符。这和 Perl 的 /s 修正符是等效的。...x (PCRE_EXTENDED) 忽略正则的空白。...如果设定了此修正符,模式的美元元字符仅匹配目标字符串的结尾。没有此选项时,如果最后一个字符是换行符的话,美元符号也会匹配此字符之前(但不会匹配任何其它换行符之前)。

1.5K20
领券