正则表达式从数字到数字匹配?

2023-11-29

有没有办法从一个数字到另一个数字进行正则表达式?

我有这个曲目列表:

01. Intro 02. Waage 03. Hyänen (feat. Samra) 04. Ich will es bar (feat. Haftbefehl) 05. Am Boden bleiben (feat. Casper & Montez) 06. Panzerglas (feat. Face) 07. Sobald Du gehst 08. 90’s (feat. Olson) 09. Erzähl‘ mir nix (feat. Nio) 10. Dope & 40s 11. Lila (feat. Bosca) 12. Wo ich wohn‘ 13. Bahnen 14. 200K

我试图与之分开/\d\d([^\d]*)/g成物体。但我得到的结果是:

0: ""
1: ". Intro "
2: ""
3: ". Waage "
4: ""
5: ". Hyänen (feat. Samra) "
6: ""
7: ". Ich will es bar (feat. Haftbefehl) "
8: ""
9: ". Am Boden bleiben (feat. Casper & Montez) "
10: ""
11: ". Panzerglas (feat. Face) "
12: ""
13: ". Sobald Du gehst "
14: ""
15: ". "
16: ""
17: "’s (feat. Olson) "
18: ""
19: ". Erzähl‘ mir nix (feat. Nio) "
20: ""
21: ". Dope & "
22: ""
23: "s "
24: ""
25: ". Lila (feat. Bosca) "
26: ""
27: ". Wo ich wohn‘ "
28: ""
29: ". Bahnen "
30: ""
31: ". "
32: ""
33: ""
34: "0K"

我如何包含数字01, 02, 03...像第 14 首主打歌这样的情况有哪些可能性200k?


您可以使用

text.split(/\s+(?=\d+\.\s)/)

See the 正则表达式演示. Details:

  • \s+- 一个或多个空格
  • (?=\d+\.\s)- 需要一位或多位数字的正向前瞻,.以及紧邻当前位置右侧的空白。

请参阅 JavaScript 演示:

const text = "01. Intro 02. Waage 03. Hyänen (feat. Samra) 04. Ich will es bar (feat. Haftbefehl) 05. Am Boden bleiben (feat. Casper & Montez) 06. Panzerglas (feat. Face) 07. Sobald Du gehst 08. 90’s (feat. Olson) 09. Erzähl‘ mir nix (feat. Nio) 10. Dope & 40s 11. Lila (feat. Bosca) 12. Wo ich wohn‘ 13. Bahnen 14. 200K";
text.split(/\s+(?=\d+\.\s)/).forEach( x =>
  console.log(x))

如果您需要确保项目符号编号递增,则需要将代码调整为

const text = "01. Intro containing 26. chars 02. Waage 03. Hyänen (feat. Samra) 04. Ich will es bar (feat. Haftbefehl) 05. Am Boden bleiben (feat. Casper & Montez) 06. Panzerglas (feat. Face) 07. Sobald Du gehst 08. 90’s (feat. Olson) 09. Erzähl‘ mir nix (feat. Nio) 10. Dope & 40s 11. Lila (feat. Bosca) 12. Wo ich wohn‘ 13. Bahnen 14. 200K";
var chunks = text.split(/\s+(?=\d+\.\s)/)
chunks = chunks.reduce(
    function(acc, currentValue, index) {
      if (index>0) {
        const num = Number(currentValue.match(/^\d+/)[0])
        if (num - num_prev === 1) {
            acc.push(currentValue); num_prev = num;
        } else {
            acc[acc.length-1] += ` ${currentValue}`;
        }
        return acc;
      } else {
          acc = [currentValue]; num_prev = 1;
          return acc;
      }
    }, [])
chunks.forEach( x =>
  console.log(x))
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

正则表达式从数字到数字匹配? 的相关文章

随机推荐

  • 即使处理了被拒绝的承诺,仍收到“UnhandledPromiseRejectionWarning”

    我构建了一个迭代的函数Generator包含同步代码和Promises module exports isPromise value return typeof value object value null then in value r
  • 可以“使用严格”警告而不是错误

    使用时use strictperl 将在不安全的构造上生成运行时错误 现在我想知道是否可以让它只打印警告而不导致运行时错误 或者是use warnings 或 w 关于相同问题的警告 No use strict无法发出警告而不死 它所做的只
  • 为什么 Next.js 中间件会多次运行?

    我创建了一个新鲜的Next js using npx create next app latest typescript 安装后 版本为13 3 4 在不更改任何文件的情况下 我添加了一个新的middleware ts文件内的src文件夹
  • Java中有没有办法实现n层嵌套循环?

    换句话说 我可以做类似的事情吗 for for for 除了N次 换句话说 当调用创建循环的方法时 它会被赋予一些参数 N 然后该方法将创建 N 个嵌套在另一个循环中的循环 当然 我们的想法是应该有一种 简单 或 通常 的方法来做到这一点
  • 我希望我的 Domino Servlet 获得经过身份验证的用户会话

    这似乎是一个非常基本的问题 在 Domino 上托管的正在运行的 Servlet 中 我想要访问 Domino 资源 我已经使用 IBM Notes 和 Domino 的非常精细的安全性明智地保护了这些资源 我希望 Servlet 能够向
  • React Native 错误:原始“”必须包含在显式 组件中

    您好 我在本机反应中遇到此错误 无法找出导致此错误的原因 帮助将不胜感激 谢谢 问题是空格 但是 使用制表符不算空格 尝试删除之间的空间tag和comment在第 32 和 37 行
  • 如何使用 XLRD 或 openpyxl 编辑 Excel 工作簿,同时保留图表?

    我有一本工作簿 里面有一些工作表 其中一张纸上有图表 我需要使用 xlrd 或 openpyxl 编辑另一张工作表 但是 每当我保存工作簿时 图表就会消失 有什么解决方法吗 是否有另一个保留图表和格式的 python 包 目前这两者都不可能
  • Spring 3 MVC + MySQL:无法存储 € 字符

    我使用 Hibernate 和 MySQL 5 设置了 Spring 3 MVC 在 Web 表单中 我在字段中输入单个字符 即仅一个字符 当我尝试保存数据时 出现以下异常 java sql BatchUpdateException Dat
  • Gradle 任务配置与任务执行

    下面的代码有什么区别 task A println configuration task B lt lt println action 我认为这与评价有关 即任务 A 总是被评估 而任务 B 仅在执行时才进行评估 事实上 任务 A 的 pr
  • 在 Monotouch 中使用 CoreAnimation 为自定义属性设置动画?

    这本质上与此处发布的问题相同 在 CALayer 中对自定义属性进行动画处理一年多前 尚未得到答复 我创建一个自定义图层并在其上画一个圆圈 我希望能够对圆的半径 以及稍后的其他属性 进行动画处理 根据我读到的内容 我是这样设置的 publi
  • 我在哪里可以找到一些 UML 示例? [关闭]

    Closed 这个问题不符合堆栈溢出指南 目前不接受答案 我需要大量 UML 图样本作为开发我自己的图的起点 有谁知道有什么好的网站可以找到吗 Thanks 学习 UML 的最佳资源是 Martin Fowler 的 UML 蒸馏 如今 这
  • 在离线 iOS 应用程序中使用 MBTiles

    我已经有一个使用 MBTiles 格式存储的地图 我想在我正在制作的应用程序中使用它 应用程序在移动设备上没有信号 连接的情况下运行至关重要 Mapbox 之前有一个示例 介绍了如何将 MBTiles 与 RMMBTilesSource 一
  • 使用四元数从 iPhone 计算偏航、俯仰和滚动?

    我见过很多问题和文章提到四元数可以用来从 iPhone 获得更好 更准确 更稳定的偏航 俯仰和横滚读数 而不是读取它的直接偏航 俯仰和横滚读数 但与此同时 我还没有看到任何在iPhone平台上实现四元数的正确方法 作为初学者 真的很难知道这
  • Socket.io 不适用于 Firefox 和 Chrome

    我正在尝试开发一个简单的聊天应用程序 这是我的chat js file var app require http createServer handler io require socket io listen app fs require
  • 在 python 中使用 cairosvg 模块时可以指定缩放吗

    cairosvg 的命令行版本允许缩放 这是帮助函数的输出 cairosvg h usage cairosvg h v f pdf png ps svg d DPI W WIDTH H HEIGHT s SCALE u o OUTPUT i
  • Kafka Streams - 如何更好地控制内部创建的状态存储主题的分区?

    Kafka Streams 中的状态存储是在内部创建的 状态存储按键分区 但不允许提供除by key 据我所知 问题 How to 控制状态存储内部创建主题的分区数量 状态存储主题如何推断默认情况下要使用的分区数量和分区 以及如何覆盖 如果
  • OpenGL 计算着色器 SSBO

    我想要一个在输出缓冲区中写入 1 的计算着色器 我编译着色器并将其附加到程序中 没有问题 然后我调用glDispatchCompute 函数 我等到计算着色器结束 但当我看到数组时 只有 0 谁能告诉我错误在哪里 这是我的计算着色器代码 v
  • 是否无法从 BroadcastReceiver 启动活动

    我想从扩展 BroadcastReceiver 的类中调用此活动 但它不起作用 Intent i new Intent DevicePolicyManager ACTION SET NEW PASSWORD context startAct
  • OmniFaces 条件注释未写入 HTML 输出

    我正在使用 OmniFaces conditionalComment 加载 IE 6 浏览器的 javascript 文件 在网站上 它说脚本应该包含在页面中 如下所示 这不是有效的 xml 因此不能在 JSF xhtml 文件中使
  • 正则表达式从数字到数字匹配?

    有没有办法从一个数字到另一个数字进行正则表达式 我有这个曲目列表 01 Intro 02 Waage 03 Hy nen feat Samra 04 Ich will es bar feat Haftbefehl 05 Am Boden b