regex - 正则表达式替换空间
问题描述
我有一段代码正在抓取格式很差的价格。我只想使用正则表达式来清理它。
他们正在发送
$ 3 58
我想删除 $ 和空格,并将美元和美分之间的空格替换为 . 所以我得到:
3.58
我可以摆脱 $ 和领先的空间,但我真的被困在替换上。我知道
Regex (.*) returns everything
Regex \ (.*) returns '3 58'
但我真正想要的是
3.58
我正在尝试在一个名为内容抓取器的程序中执行此操作,因此我只能访问正则表达式。
解决方案
在$ 3 58
您可以匹配您想要在替换中删除的内容并捕获您想要保留的内容。
匹配一个美元符号\$
,然后匹配一个或多个空白字符\s+
并在一组中捕获一个或多个数字(\d+)
在替换使用 group1 。组2。例如$1.$2
推荐阅读
- c# - 将 RichTextBox 绑定到 FlowDocumentReader 内部的内容时,它变为 ReadOnly
- javascript - 以高分辨率png保存html div
- spring - spring security,从表中获取方法和 url 并动态验证 authorizeRequests
- r - 从同级多个同名节点抓取网页
- android - React Native Azure Auth 注销而不重定向到网页
- sql - 如何根据特定字段更新具有数字总和的表?
- javascript - 使用 jest-puppeteer 对文本字段进行 Webscrape 测试
- swift - 带有表情符号的推送通知(Firebase + iOS)
- json - 如何解决jsonb中的递归嵌套树?
- c# - Visual Studio 说我的变量在私有方法中没用