regex - php regex pregmatch 删除字符之间的零
问题描述
我有一个字符串,我想实现删除字符-s
和第一个数字之间的所有零。
1v-s001v => 1v-s1v
2v-s030r => 2v-s30r
3v-s021v => 3v-s21v
我正在尝试:
\w+-s0*(\d)
但它与主题字符串不匹配。
解决方案
您可以使用
(-s)0+(\d)
并替换为$1$2
. 如果您的正则表达式风格不支持,您可以替换\d
为。[0-9]
\d
查看正则表达式演示
细节
(-s)
- 捕获组 1(稍后使用$1
替换模式中的占位符/替换反向引用):-s
子字符串0+
- 一个或多个0
字符(\d)
- 捕获组 2(后来用$2
替换模式中的占位符/替换反向引用来指代):任何一位
推荐阅读
- android - 如何使用 Xamarin Prism 在 Android 上设置 ParentActivityOrWindow
- python - JMESPath 日期过滤
- google-sheets - 嵌套公式未按预期工作 Google 表格
- html - HTML范围结果到文本文件?
- database - 恢复使用旧版本 mongodump 制作的备份时,最新版本的 mongorestore 非常慢
- json - SCALA 如何将 json 解析回控制器?
- python - 找到元素对的数量,使得它们的总和为 8,数组为 a=[3, 5, 6, 3, 2, 1, 3]
- reactjs - 为什么我的应用程序没有部署在 azure 上
- java - Spring Boot 2 @OrderBy 被忽略
- html - 如何使用 Bootstrap(和 React)使图像居中