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

如何在PHP中使用regex查找由空格括起来的数字?

在PHP中使用正则表达式(regex)查找由空格括起来的数字,可以使用preg_match函数来实现。

代码语言:txt
复制
$str = "This is a string with 123 numbers inside.";
$pattern = "/\s(\d+)\s/"; // 匹配由空格括起来的数字

if (preg_match($pattern, $str, $matches)) {
    echo "找到匹配的内容: " . $matches[1];
} else {
    echo "没有找到匹配的内容。";
}

上述代码中,使用正则表达式模式 /\s(\d+)\s/ 来匹配由空格括起来的数字。该模式的含义是:一个空格,后面跟着一个或多个数字(使用\d+表示),然后再跟着一个空格。

preg_match函数接受三个参数:模式、待搜索的字符串、保存匹配结果的数组。如果找到匹配的内容,该函数将返回1,并将匹配的结果保存在$matches数组中,其中$matches[0]表示完整匹配的字符串,$matches[1]表示第一个捕获组(即括号内的部分)匹配的内容。

这个问题的应用场景是在一个字符串中查找由空格括起来的数字,例如在解析文本时提取特定格式的数据。腾讯云提供的相关产品是云服务器(https://cloud.tencent.com/product/cvm)和腾讯云云函数(https://cloud.tencent.com/product/scf),它们可以用于部署和执行PHP代码。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

学校早这么教正则表达式,少走多少弯路!那个分组用法震到我了

在本文中,我们将探索如何在grepGNU版本中使用正则表达式基础知识,该版本在大多数Linux操作系统默认可用。 ? grep正则表达式 正则表达式(regex)是与一组字符串匹配模式。...通常,你应该始终用单引号将正则表达式起来,以避免shell解释和扩展元字符。 文本匹配 grep命令最基本用法是在文件搜索文字字符或字符序列。...如果搜索字符串包含空格,则需要用单引号或双引号将其引起来: grep "FTP User" /etc/passwd 锚点 锚点是元字符,允许您指定必须在行什么位置找到匹配项。...例如,查找包含“accept”或“accent”行,可以使用以下表达式: grep 'acce[np]t' file.txt 如果方括号内第一个字符是脱字符^,则它匹配方括号任何单个字符。...以下表达式匹配以大写字母开头每一行: grep '^[A-Z]' file.txt grep还支持用括号起来预定义字符类。下表显示了一些最常见字符类: [:alnum:] 字母数字字符。

2.4K30

正则表达式来了,Excel正则表达式匹配示例

Pattern(必需):要匹配正则表达式。当直接放在公式时,模式必须用双引号起来。 Match_case(可选):定义匹配类型。...例如,要匹配正好7位数字组成发票号,可以使用\d{7}。但是,请记住,它将匹配字符串任何位置7位数字,包括10位或100位数字。如果这不是要查找内容,应在两侧放置单词边界\b。...在下面的数据集中,我们将搜索前两组中有3位数字、最后一组中有4位数字10位数字。这些组可以用句点、连字符或空格分隔。第一组可以用括号起来,也可以不用括号起来。...原始字符串在A5,正则表达式在A2,公式采用以下形式: =RegExpMatch(A5, A2) 图5 注意,在正则表达式,\s表示任何空格字符,空格、制表符、回车符或换行符。...要仅允许空格使用[-\.]而不是[-\.\s]。 正则表达式不匹配字符 若要查找不包含特定字符字符串,可以使用与括号以外任何内容匹配否定字符类[^]。

21.2K30
  • 正则表达式30分钟入门教程

    虽然通常英文单词是空格,标点符号或者换行来分隔,但是 \b并不匹配这些单词分隔字符任何一个,它只匹配一个位置。 假如你要找是 hi后面不远处跟着一个 Lucy,你应该用 \bhi\b....\d{8}这个表达式匹配3位区号电话号码,其中区号可以用小括号起来,也可以不用,区号与本地号间可以用连字号或空格间隔,也可以没有间隔。你可以试试用分枝条件把这个表达式扩展成也支持4位区号。...]+>匹配用尖括号起来以 a开头字符串。 后向引用 使用小括号指定一个子表达式后,匹配这个子表达式文本(也就是此分组捕获内容)可以在表达式或其它程序作进一步处理。... # 查找尖括号起来字母或数字(即HTML/XML标签) ) # 前缀结束 .* # 匹配任意文本...= # 断言要匹配文本后缀 # 查找尖括号起来内容:前面是一个"/",后面是先前捕获标签 ) # 后缀结束 贪婪与懒惰 当正则表达式包含能接受重复限定符时

    96130

    正则表达式30分钟入门教程 转

    虽然通常英文单词是空格,标点符号或者换行来分隔,但是\b并不匹配这些单词分隔字符任何一个,它只匹配一个位置。...\d{8}这个表达式匹配3位区号电话号码,其中区号可以用小括号起来,也可以不用,区号与本地号间可以用连字号或空格间隔,也可以没有间隔。你可以试试用分枝条件把这个表达式扩展成也支持4位区号。...]+>匹配用尖括号起来以a开头字符串。 后向引用 使用小括号指定一个子表达式后,匹配这个子表达式文本(也就是此分组捕获内容)可以在表达式或其它程序作进一步处理。...<= # 断言要匹配文本前缀 # 查找尖括号起来字母或数字(即HTML/XML标签) ) # 前缀结束 .* #...= # 断言要匹配文本后缀 # 查找尖括号起来内容:前面是一个"/",后面是先前捕获标签 ) # 后缀结束 贪婪与懒惰 当正则表达式包含能接受重复限定符时

    90520

    正则表达式学习笔记

    虽然通常英文单词是空格,标点符号或者换行来分隔,但是\b并不匹配这些单词分隔字符任何一个,它只匹配一个位置。 假设你在一篇英文小说里查找hi,你可以使用正则表达式hi。...这时你就得使用\来取消这些字符特殊意义。因此,你应该使用\.和\*。当然,要查找\本身,你也得用\\....,然后是一个0,后面跟着2个数字(\d{2}),然后是)或-或空格一个,它出现1次或不出现(?),最后是8个数字(\d{8})。...\d{8}这个表达式匹配3位区号电话号码,其中区号可以用小括号起来,也可以不用,区号与本地号间可以用连字号或空格间隔,也可以没有间隔。你可以试试用分枝条件把这个表达式扩展成也支持4位区号。...]+>匹配用尖括号起来以a开头字符串。

    77670

    你应该学习正则表达式

    这允许我们在文本块(而不是代码行)匹配年份,这对于搜索段落文本非常有用。 \b ——字边界 (19|20) ——使用或(|)操作数匹配’19′或’20′。...这个有点长,但它看起来与我们上面讲过有些类似。 (0?[1-9]|[12]\d|3[01])——匹配1到31之间任何数字(前面的0是可选) ([\/\-])——匹配分隔符/或- (0?...替换模式(\3\2\1\2\4)简单地交换了表达式月份和日期内容。 以下是我们如何在Javascript中进行这种转换: ?...5.2 – 真实示例 – 标准化CSS注释开头 假设我们有一个又大又杂乱CSS文件,是几个不同的人写。在这个文件,有些注释以/*开头,有些以/**开头,还有些以/*****开头。...7 – 命令行用法 许多Unix命令行实用程序也支持Regex!我们将介绍如何使用grep查找特定文件,以及使用sed替换文本文件内容。

    5.3K20

    【JavaSE专栏20】浅谈Java正则表达式应用场景

    ---- 二、Java 如何使用正则表达式 在 Java ,同学们可以使用 java.util.regex 包来使用正则表达式,下面是一个简单示例代码,展示了如何在 Java 中使用正则表达式进行匹配和替换操作...以上代码创建了一个正则表达式模式,用于匹配数字( \d + 表示连续数字)。 然后使用 Pattern 和 Matcher 对象对输入文本进行匹配操作,并使用 find() 方法查找所有匹配数字。...()) { System.out.println("URL: " + matcher.group()); } 3.3 文本替换 正则表达式可以用于在文本查找并替换特定模式,例如将字符串所有空格替换为下划线...,日志文件、CSV文件等,例如从CSV文件解析每行数据。...---- 四、总结 本文对 Java 正则表达式进行了介绍,讲解了如何在实际业务中使用 Java 正则表达式,并给出了样例代码。在下一篇博客,将讲解 Java 序列化和反序列化。

    32130

    正则表达式简介与常用表示

    只能输入数字和26个英文字母组成字符串:"^[A-Za-z0-9]+$"。 只能输入数字、26个英文字母或者下划线组成字符串:"^\w+$"。...","正则表达式");   Matches[在字符串寻找要查找内容]时候,直接写表达式,不需要^$ 4)        字符串替换:Regex.Replace("字符串","匹配正则","替换正则...四位数字-两位数字-两位数字   要求:年份必须是19**或者20**,月份必须在01--12,日必须在01-31 下面的写法是错误,因为|优先级最低,如果你将并列选项用括号起来,判断完数字后,...string str=wc.DownloadString(address); //通过观察,分析出图片存储形式 //要非某一项的话(]+>[^),^一定要用[]起来...(s, @"(.+)", @"$1"); Console.WriteLine(s); Console.ReadKey(); 5)        将文本连续空格替换为一个空格

    80820

    正则表达式30分钟入门教程--deerchao

    虽然通常英文单词是空格,标点符号或者换行来分隔,但是\b并不匹配这些单词分隔字符任何一个,它只匹配一个位置。...\d{8}这个表达式匹配3位区号电话号码,其中区号可以用小括号起来,也可以不用,区号与本地号间可以用连字号或空格间隔,也可以没有间隔。你可以试试用分枝条件把这个表达式扩展成也支持4位区号。...]+>匹配用尖括号起来以a开头字符串。 后向引用 使用小括号指定一个子表达式后,匹配这个子表达式文本(也就是此分组捕获内容)可以在表达式或其它程序作进一步处理。...<= # 断言要匹配文本前缀 # 查找尖括号起来字母或数字(即HTML/XML标签) ) # 前缀结束 .* #...= # 断言要匹配文本后缀 # 查找尖括号起来内容:前面是一个"/",后面是先前捕获标签 ) # 后缀结束 贪婪与懒惰 当正则表达式包含能接受重复限定符时

    1.9K40

    正则表达式介绍

    前一百万位数?好吧,我们可以使用正则表达式来找出它!更改下面的 regex 变量,以 ? 前百万位数字查找出生日期或您想要任何数字!...30), match='V'> 所以我们真的需要在那里用括号起来 (V|v) 。...不仅如此,您还必须应对这样一个事实,即国家指标可能会或可能不会出现这些数字,您可以假设它看起来像 "+1" 或 "001" 。国家指示符可以用空格或短划线与数字其余部分分开。...\w 表示任何字母数字字符(字母,数字和 _ ),而 \s 表示任何空格字符(空格 "",制表符,换行符等)。 我展示所有这三个特殊字符都可以大写。如果他们是,那么他们意思恰恰相反!...假设如下: 国家 / 地区代码以 "00" 或 "+" 开头,后跟一到三位数字 电话号码长度在 8 到 12 之间 电话号码和国家 / 地区代码用空格 "" 或连字符 "-" 分隔 让您代码在我接下来要提供字符串查找电话号码

    4.9K00

    正则表达式用法及原理

    ,就变成非贪婪匹配 图片 图片 这个regex本意都是查找被""起来内容,第一张图只有量词+这种情况下就是贪婪匹配,匹配了整个字符串;第二张图在量词+后添加了?...独占匹配:=> regex = 'xy{1,3}+yz',如图就只匹配一个text,不回溯 图片 分组与引用 一般来说我们会把以()起来看做一个整体,也即分组概念 比如:2022-06-29 21...,可以使用(?...图片 常见4匹配模式 图片 正则断言:对匹配到文本有位置要求,以下图为例:想要匹配11为数字手机号,但是我输入14位数字的话,前11位是可以匹配 图片 1.单词边界(word boundary...= 'i work at xiaomi' 从正则表达式第一个字符x,在text文本查找x,匹配后直到走到字符o,接着用第一个分支aia去匹配text文本m,匹配失败,第一个分支ai结束,用第二个分支

    1.4K20

    正则表达式零宽断言详解(?=,?

    注意:这里所说子表达式并非只有用小括号起来表达式,而是正则表达式任意匹配单元。 javascript只支持零宽先行断言,而零宽先行断言又可以分为正向零宽先行断言,和负向零宽先行断言。...正则表达式这个概念最初是Unix工具软件(例如sed和grep)普及开。...=re)\w+\b,匹配以re开头单词后面部分(除了re以外部分),查找reading a book.时,它会匹配ading。 var reg = new Regex(@"\w+(?...假如你想要给一个很长数字每三位间加一个逗号(当然是从右边加起了),你可以这样查找需要在前面和里面添加逗号部分:((?...=)匹配不包含属性简单HTML标签内里内容。()指定了这样前缀:被尖括号起来单词(比如可能是),然后是.*(任意字符串),最后是一个后缀(?=)。

    6.4K51

    讲给前端正则表达式(2):写出更优雅、更精确正则表达式

    在正则表达式,你可以参考一些实现集合。 字母数字字符 如果你想匹配所有字母和数字字符,则需要这样模式:/[A-Za-z0-9_]/。相当复杂不是吗?不过,有一种更短方法:\w。...之前我们了解到要匹配任何数字,我们可以使用类似 [0-9] 模式。...处理空格 在字符串,有几种类型空格字符: 空格 ” ” tab “/t” 新行 “\n” 回车符 “\r” 要创建一个匹配所有情况模式,需要类似这样复杂内容:/[\t\n\r]/。...使用加号会使它匹配一位或多位数字。如果在字符串开头到结尾之间有数字,并且没有其他内容,则将模式用 ^ 和 $ 起来能够确保仅匹配表达式。...现在你更加了解了匹配模式,从而进一步了解如何指定要查找样式位置:字符串开头与结尾,能够写出能够匹配整个字符串或行(多行模式下)正则表达式。我们写出模式将会越来越复杂:我鼓励你多去使用

    74010

    正则表达式 入门

    学会使用正则表达式可以极大提高我们文本处理效率,并且各大操作系统、编程语言、文本编辑器都已经支持正则表达式 在线正则测试工具:https://regex101.com/r/PnzZ4k/1 下面的例子我会使用...分组与引用 举个例子: 假设我们现在要去查找15位或18位数字。 根据前面学习知识,使用量词可以表示出现次数,使用管道符号可以表示多个选择,你应该很快就能写出d15}d{18。...但经过测试,你会发现,这个正则并不能很好地完成任务,因为18位数字也会匹配上前15位 ? 没有匹配到18位记录 解决方式 可以用括号起来表示一个整体 ? 替换举例 ? 替换后: ?...断言 断言是指对匹配到文本位置有要求。 通过一些例子来讲解。 你应该知道 d{11} 能匹配上11位数字,但这11位数字可能是18位身份证号一部分。...再比如,去查找一个单词,我们要查找 tom,但其它单词,比如 tomorrow 也包含了tom ? 单词边界 ? 环视 举例邮政编码判断:6位数字,且左边不是数字,右边不是数字 ?

    74130

    Shell 变量

    规则 定义变量时,变量名不加美元符号($,PHP语言中变量需要),: your_name="testName" 注意,变量名和等号之间不能有空格,这可能和你熟悉所有编程语言都不一样。...同时,变量名命名须遵循如下规则: 首个字符必须为字母(a-z,A-Z)。 中间不能有空格,可以使用下划线(_)。 不能使用标点符号。 不能使用bash里关键字(可用help命令查看保留关键字)。...,第二个)查找i或者s第一次出现位置 注意: 以上脚本 “`” 是反引号,而不是单引号 “’”,不要看错了,位于Esc键盘下方。...获取数组元素要利用下标,下标可以是整数或算术表达式,其值应大于或等于0。 定义数组 在Shell,用括号来表示数组,数组元素用”空格”符号分割开。...每一行加个#符号太费力了,可以把这一段要注释代码用一对花括号起来,定义成一个函数,没有地方调用这个函数,这块代码就不会执行,达到了和注释一样效果。

    2.1K40

    编程思想 之「字符串」

    如果我们想要插入一个普通反斜线,则应该使用\\\\,不过换行和制表符之类符号只需要使用单反斜线,\t等。在正则表达式,括号()有着将表达式分组效果,而竖线|则表示或操作。...X{n,m}+ X 至少 n 次,且不超过 m 次 现在,我们一起来看看创建正则表达式对象过程: 首先,定义一个正则表达式字符串,String regex = "\\d"; 然后,用Pattern...(regex); // 使用 Matcher 对象方法对字符串进行操作,为了获取三个字母组成单词,可以用查找 find() 方法 Matcher matcher =...多数正则表达式操作都接受CharSequence类型参数。在 Unix / Linux 上,命令行正则表达式必须用引号起来。...此外,正则表达式还有一个组概念,组就是用括号划分正则表达式,可以根据组编号来引用某个组。组号为 0 表示整个表达式,组号为 1 表示被第一对括号起来组,依次类推。

    47930

    正则表达式快速入门

    正则表达式(Regular Expression):在代码中常简写为regex使用单个字符串来描述、匹配一系列符合某个句法规则。...$ 此外,还可以随时到百度查阅或查看站长工具:http://tool.chinaz.com/regex/ 最近浏览了不少语言,包括python(1989),ruby,perl,php等,大体上来看,...倒杠后面跟小t, 制表符号很明了; 倒杠后面跟小r, 回车符号知道了; 倒杠后面跟小s, 空格符号很重要; 小写跟罢跟大写,多得实在不得了; 倒杠后面跟大W, 字母数字靠边站; 倒杠后面跟大S...表0-1次重复) 花括号里学问多,重复操作能力强; ({n} {n,} {n,m}) 若要重复字符串,园把它起来; ((abc){3} 表示字符串"abc"重复3次 ) 特殊集合自定义,括号来帮你忙...(键盘上与"\"是同一个键) 1竖能用很多次,复杂定义很方便; 园括号,用途多; 反向引用指定组,数字排符对应它; ("\b(\w+)\b\s+\1\b"数字"1"引用前面的"(\w+)")

    1.3K50

    爬虫必学知识之正则表达式上篇

    '\d' : 这个表示匹配单个0-9数字 '\D' : 与\d相反,匹配数字以外内容 用代码来感受下: import re#这个库是用来使用正则表达式 a='sg+sga5g45gaae3f23hgt13...' r=re.findall('\d',a)#这个就是根据\d正则表达式来查找对应字符,其中\d是对应0-9数字 #查找数字用\D r1=re.findall('\D',a) print(r) print...3', '1', '3'] ['s', 'g', '+', 's', 'g', 'a', 'g', 'g', 'a', 'a', 'e', 'f', 'h', 'g', 't'] 可以看到找出了字符串数字和非数字...,我们就需要用到 [ ] ,用括号起来字符,里面的内容表示或关系,那来看看代码 import re a='abc,acc,agc,anc,afc,adc,aec' #现在查找上面的中间字符为c或者...+ 字母 表示一系列字符元字符,只能匹配单个字符,常用的如下 \w:匹配数字和字符「不包括&符号」只匹配单词,数字和下划线 \W:与\w相反,这个包括空格和回车 \s:匹配空格字符,空格,回车和制表符

    1.1K60
    领券