ios - 如何创建一个仅在数字中而不是在字符串中查找逗号的正则表达式?
问题描述
注意:我正在使用 Swift 5 (iOS) 来尝试执行此操作。
假设我有以下字符串:
This item, known as x, can be found in 1:1,234 boxes. There are 10,000, and not less, produced.
我想要一个检测1,234
and中的逗号10,000
但忽略其他逗号的正则表达式。我有这个正则表达式可以找到带逗号的完整数字,但我希望只显示逗号本身。
([^\d]|^)\d{1,2},\d{3}([^\d]|$)
我对正则表达式很糟糕。谁能给我一些关于如何做到这一点的指示?
最终,RegEx 似乎需要检测前面的 3 个数字、一个逗号,然后是后面的 1+ 个数字。
解决方案
根据评论中用户@41686d6564 的评论(谢谢!),这是我如何完成我需要使用 Swift 5 完成的工作:
desc = desc.replacingOccurrences(of: #"(?<=\d),(?=\d{3}(?:,\d{3})*(?!\d))"#,
with: "",
options: .regularExpression,
range: nil)
推荐阅读
- c# - 如何使消息与 TcpClient 分开发送
- python - 如何在 Python 3 中访问类实例变量作为方法参数?
- php - 如何在 Google Cloud Platform 上使用 Firestore 正确部署 PHP 应用程序?
- sql - 查询中来自同一个表的两个 ID - 尝试获取两个 ID 的名称
- c++ - Matlab rescale 命令的特征等效项
- c# - 为什么httpcontent readasstringasync会抛出取消的异常
- angular - 在 Angular 中使用不同的样式和 js 布局分离管理、用户区域
- android - 智能转换为 (Int) 是不可能的,因为
是由变化的闭包捕获的局部变量 - r - 深度学习、神经网络
- list - haskell [[Char]] 到 [[Int]]