sql - 在 Bigquery 中看到“数字 + 一个字母 + [逗号或空格]”后提取字符串的正则表达式
问题描述
我正在尝试提取:
Abbey Grove
Abbey Grove
Abbey Road View
Abbey Road
Abbey Terrace
Abbey Wood Road
Abbey Grove
从
23a, Abbey Grove
43a Abbey Grove
Block 509a Abbey Road View
511 Abbey Road
Flat 8a, Abbey Terrace
14 Abbey Wood Road
100 Abbey Grove
在谷歌大查询中。问题是:
regexp_replace(text, '[^a-zA-Z]', '')
给了我两个 a 的“aabbeywood”。本质上,我只想将所有文本保留在“数字”或“数字加一个字母”字符串之后。
解决方案
这并不容易,因为我不知道您的所有限制(例如街道名称可以包含数字吗?数字前是否可以有除“Block”之外的其他词?)。这是适用于给定示例的正则表达式(您可以从 获取街道名称group3
):
^(Block ){0,1}([0-9]+[A-Z|a-z]{0,1}[,]{0,1} )([a-z|A-Z| ]+)
有关示例,请参见此链接。
推荐阅读
- flutter - 按下按钮时具有动态高度的 BottomSheet (DraggableScrollableSheet)
- apache-spark - Spark 单元测试:使用在内存数据库上运行的 HiveMetaStore 启动 spark 会话
- javascript - 在删除记录之前使用 javascript 自定义对话框。但不知道如何通过js发送php值
- typescript - “??” TypeScript 中的运算符
- javascript - 在 for 循环中处理 then-able Java-script 函数以填充数组
- php - php在MYSQL数据库中插入多行
- javascript - 添加指向动态 div 元素的链接只能通过背景图像区分
- angular-material - 将库从 Angular 9 更新到 Angular 10 会产生错误 Symbol MatButton 在 ....is notexported from @angular/material/button 中声明
- objective-c - macOS opendirectory:从活动目录 ODNode 对象中提取所有域
- javascript - 无法连接到 mongoshell MongoDB Enterprise atlas-corj2q-shard-0:PRIMARY>