正则表达式 数字字符串 数字字符串循环

2024-05-20

我的字符串是:

$str='Move 10 Casio Watch 20 Apple Iphone 100 Apple Macbook to store';

我用过了:

preg_match_all('| ([0-9]+) (.*) |', $str, $matches);

但它只匹配产品名称的第一个字母。

我的结果:

Array
(
    [0] => Array
        (
            [0] =>  10 Casio 
            [1] =>  20 Apple 
            [2] =>  100 Apple 
        )

    [1] => Array
        (
            [0] => 10
            [1] => 20
            [2] => 100
        )

    [2] => Array
        (
            [0] => Casio
            [1] => Apple
            [2] => Apple
        )
)

Regex: \d+ \K(?: ?[A-Z][a-z]+)+ https://regex101.com/r/iLYiMX/1

Details:

  • \d+匹配 1 次到无限次之间的数字
  • \K重置所报告比赛的起点
  • (?:)非捕获组
  • ?匹配零到一次之间的空格字符
  • [A-Z]匹配大写字符
  • [a-z]+在一次和无限次之间匹配小写字符
  • (?:)+重复匹配一次或无限次

PHP code:

$str = 'Move 10 Casio Watch 20 Apple Iphone 100 Apple Macbook to store';
preg_match_all("~\d+ \K(?: ?[A-Z][a-z]+)+~", $str, $matches);
print_r($matches[0]);

Output:

Array
(
    [0] => Casio Watch
    [1] => Apple Iphone
    [2] => Apple Macbook
)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

正则表达式 数字字符串 数字字符串循环 的相关文章

  • mod_rewrite 将 '_' 替换为 '-'

    我几乎已经有了 mod rewrite 规则 但我已经屈服了 我需要重写 country countryname php to country countryname 但是 国家 地区名称 可能有这样的下划线 south africa ph
  • Python替换多个字符串同时支持反向引用

    有一些好方法 https stackoverflow com questions 6116978 python replace multiple strings处理 python 中的同时多字符串替换 但是 我在创建一个高效的函数来实现这一
  • 匹配一对未转义的平衡分隔符

    如何匹配一对不被反斜杠转义的平衡分隔符 本身不被反斜杠转义 无需考虑嵌套 例如 对于反引号 我尝试了此操作 但是转义的反引号无法按转义的方式工作 regex lt lt hello how are you gt 1 how expected
  • 将 Regex 对象分配给 html 输入模式

    我需要以编程方式将正则表达式对象分配给输入元素模式属性 以下是我当前的实现 var regex d 5 element attr pattern regex toString slice 1 1 有没有更好的方法来做到这一点而不需要字符串操
  • 正则表达式中连字符的这种用法有效吗?

    NB I only想知道它是否是正则表达式定义中未转义连字符的有效应用 它是not关于匹配电子邮件 连字符或反斜杠的含义 量词或其他任何内容的问题 另外 请注意 链接的答案并没有真正讨论转义 未转义连字符之间的有效性问题 通常我会像这样声明
  • 什么正则表达式永远无法匹配?

    Merged https meta stackexchange com questions 158066 what is a merged question with 永远不会与任何内容匹配的正则表达式 questions 1723182
  • JavaScript:搜索字符串时的 indexOf 与 Match? [关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 使用之间是否存在明显的性能差异 str indexOf src and str match src 我个人比较喜欢match 和正则表达式 但同
  • Oracle SQL——从字符串中删除部分重复项

    我有一个表 其中有一列包含字符串 如下所示 static text here 1abcdefg1abcdefgpxq 从这个字符串1abcdefg重复两次 所以我想删除该部分字符串 然后返回 static text here 1abcdef
  • 使用Java获取CSS文件中图像的URL?

    我正在尝试使用 Java 获取远程 CSS 文件中图像 所有 MIME 类型 的 URL 我正在使用 jsoup 来获取 css 的 URL 经过无数个小时的观看CSS解析器 http cssparser sourceforge net 由
  • Java 相当于 Perl 的 s/// 运算符?

    我有一些代码正在从 Perl 转换为 Java 它大量使用了正则表达式 包括s 操作员 我已经使用 Perl 很长时间了 但仍然习惯 Java 的做事方式 特别是 字符串似乎更难使用 有谁知道或有一个完全实现的Java函数s 这样它就可以处
  • 使用 C++ 中的 Boost 正则表达式缩小 HTML

    Question 如何使用 C 缩小 HTML 资源 外部库可能是答案 但我更希望改进当前代码 尽管我很期待其他的可能性 当前代码 这是我在c 中的解释以下答案 https stackoverflow com a 5324014 57079
  • 正则表达式提取美国邮政编码,但不提取假代码

    使用 XML 包和 XPath 从网站上抓取地址 有时我只能得到一个嵌入了我想要的邮政编码的字符串 提取邮政编码很简单 但有时会显示其他五位数字的字符串 以下是 df 中问题的一些变体 zips lt data frame id seq 1
  • 正则表达式匹配任何重复两次的字符

    我试图确定提供的字符串是否包含重复两次的字符 以下是我正在使用的正则表达式 a z 1 1 但是 当针对以下字符串进行测试时 下面的两个字符串都与模式匹配 尽管我使用了 1 gt gt gt re findall r a z 1 1 abc
  • 正则表达式和 ios5 stringByMatching ==> NSRegularExpression

    如何使用等效的 NSRegularExpression 更改此行 NSString encodedPoints apiResponse stringByMatching points capture 1L 谢谢 请记住 您需要 iOS 4
  • 标点符号的Javascript正则表达式(国际)?

    我需要一个正则表达式来匹配所有标点符号 例如标准的 但包括国际标记 例如颠倒的西班牙语问号 中文句点等 我的 google fu 即将到来 有谁手头有这样一个与Javascript兼容的正则表达式吗 添加到 stema的答案 https s
  • 使用 Vala 和 GLib 的正则表达式

    有没有一个函数 比如http php net manual en function preg match all php http php net manual en function preg match all php 使用 GLibh
  • 修改排序比较器内的字符串

    我有以下代码 在排序比较器中 它在进行比较之前删除前缀字符串 print for sort a s STRING b s STRING foo a cmp foo b a 尽管比较和顺序是正确的 但前缀字符串已从输出中删除 以下保留前缀字符
  • 解析格式化字符串

    我正在尝试创建一个通用格式化程序 解析器组合 示例场景 我有一个 string Format 的字符串 例如var format 0 1 我有一个用于输入的对象 字符串 数组 例如var arr new asdf qwer 我正在使用格式字
  • 正则表达式在 Velocity 模板中不起作用

    我在 Test java 中尝试过这个 String regex lt s br s s gt String test1 lt br gt System out println test replaceAll regex 但是当我在速度模板
  • 突出显示单词并提取其附近文本的函数

    我有一个文本例如 Etiam porta semmalesuada magna mollis euismod 整数取数 ante venenatis dapibus posuere velit aliquet 埃蒂亚姆 门塔 塞姆 male

随机推荐

  • 焦点未移出 RowsSupportFragment

    我创建了一个活动 其中有简单的按钮和位于底部的 RowsSupportFragment 初始焦点给予 Button 当我按下 D pad 向下时 焦点会转移到 RowsSupportFragment 中的项目 之后只有 D pad 右侧和
  • Python if 与 try- except

    我想知道为什么下面程序中的 try except 比 if 慢 def tryway try while True alist pop except IndexError pass def ifway while True if alist
  • TypeError:“在严格模式函数或调用它们的参数对象上可能无法访问‘调用者’、‘被调用者’和‘参数’属性”

    每当我尝试从我的解析中调用函数时 我都会收到此错误 TypeError 调用者 被调用者 和 参数 属性可能无法在严格模式函数或调用它们的参数对象上访问我的承诺 这几天工作得很好 现在突然不起作用了 我还尝试通过承诺中的分辨率传递相同的值
  • 如何将 NSIndexpath 转换为 NSInteger 或简单的 int?

    我需要将 nsindexpath var 转换为 NsInteger 或简单的 int 例如 int rowIndex mGoogleBaseTable selectedRow mGoogleBaseTable is a NSTable t
  • 如何将旋转的 NetCDF 转换回正常的纬度/经度网格?

    我有一个带有旋转坐标的 NetCDF 文件 我需要将其转换为正常的纬度 经度坐标 经度为 180到180 纬度为 90到90 library ncdf4 nc open dat nf 对于尺寸 它显示 1 5 variables exclu
  • ExpandableListView 的动画

    是否可以为 ExpandableListView 应用展开或折叠动画 可以使用一个简单的 ListView 来完成 该 ListView 包含最初隐藏的视图和扩展动画的自定义类 基本思想是从View GONE然后逐渐将边距大小从负值调整为所
  • Android 应用内购买用于 alpha 测试模式

    我将 APK 文件上传到 Alpha Beta 测试模式 并发表了它 我激活了我的应用内购买 ID 我创建了一些测试电子邮件 但我可以测试一下 按 购买 后 应用程序会显示一条警告 找不到您尝试购买的商品 请帮帮我 Thanks 检查您的应
  • Firebase 如何帮助在 Google 标签管理中触发标签

    我试图了解 firebase 对 google 标签管理的作用是什么 根据GTM文档记录事件和变量 https developers google com tag manager android v5 log events and vari
  • Spark SQL sql("").first().getDouble(0) 给我不一致的结果

    我有下面的查询 它应该找到列值的平均值并返回一个数字的结果 val avgVal hiveContext sql select round avg amount 4 from users payment where dt between 2
  • 使用带有 Heroku 和 CNAME 的电子邮件

    我正在 HEROKU 托管应用程序上设置 MX 记录 但遇到了问题 我有两个 CNAME 设置 myapp herokuapp com www myapp herokuapp com 网站按照上面的设置运行良好 我现在尝试通过添加 Goog
  • 如何保证单向方法的可靠性?

    The 关于单向调用 回调和事件您需要了解的信息 http msdn microsoft com en us magazine cc163537 aspx文章讲述 客户端不关心调用结果的事实并不意味着客户端根本不关心调用是否发生 一般来说
  • setSelected() 与 JRadioButton r[]=new JRadioButton[3] 不起作用[重复]

    这个问题在这里已经有答案了 在这里我做了一个虚拟程序 import javax swing import java awt import java awt event class MyClass1 implements ActionList
  • R 改变构面的顺序

    我正在尝试将方面的顺序从 BA SLG 更改为 SLG BA 我发现了与此类似的问题 但我认为我的解决方案可能不起作用 因为我已经在Excel中汇总了数据 因此 我的数据框可能会有所不同 无论如何 我尝试实现这个但无济于事 df2 lt f
  • Kivy:获取在Python中添加的小部件内的父级

    如何获取对不是由 kvlang 添加而是在 python 中添加的小部件内的父级的引用 通常你只需调用self parent然而这会返回Null如果小部件在 python 中添加到父级 一个例子 import kivy kivy requi
  • .NET 标准与 .NET 核心

    我已经了解了 NET Standard 和 NET Core 之间的区别 但我真的不知道区别是什么 或者何时选择 NET Standard 库项目以及何时选择 NET Core 库项目 我读到 NET Standard 是为了确保一组 AP
  • Objective Flickr 照片上传错误

    我正在使用 ObjectiveFlickr 库将照片从我的 iPhone 应用程序上传到 Flickr 我可以授权该应用程序并执行一般请求 但在尝试上传照片时遇到错误 要上传的照片是使用 AVFoundation 捕获的图像 这是相关代码
  • 使用 PEM 证书的 HTTPS 连接

    我正在尝试使用 PEM 证书发布 HTTPS 请求 如下所示 import httplib CERT FILE path certif pem conn httplib HTTPSConnection 10 10 10 10 443 cer
  • 为什么 Jersey 控制器未检测到我的方面(使用自定义注释)?

    我想在 Jersey 控制器上创建一个方面来测量服务执行所需的时间 我正在与我的切入点作斗争 因为它没有被检测到 而且我的方面永远不会启动 我尝试过使用很多切入点 例如 execution Monitor execution public
  • 单屏上支持多种语言的 Android 字体

    我是安卓新手 我正在实施一个应用程序 该应用程序将采用英语和乌尔都语两种语言 基本上会有一些阿拉伯语文本 其含义将根据用户选择的语言为英语或乌尔都语 我想更改阿拉伯语文本的字体 如果我在整个应用程序中应用字体 它也会改变乌尔都语和英语的外观
  • 正则表达式 数字字符串 数字字符串循环

    我的字符串是 str Move 10 Casio Watch 20 Apple Iphone 100 Apple Macbook to store 我用过了 preg match all 0 9 str matches 但它只匹配产品名称的