gpt4 book ai didi

javascript - 如何使用正则表达式从地址字符串中删除门牌号和入口?

转载 作者:行者123 更新时间:2023-11-29 10:26:38 24 4
gpt4 key购买 nike

我有各种地址字符串,我想自动清除楼号部分,只留下街道地址。

例子:

  • 输入:
"15A W 131st St, New York, NY 10037, USA"
  • 想要的输出:
"W 131st St, New York, NY 10037, USA"

  • 输入:
"125 E 145th St, New York, NY 10037, USA"
  • 想要的输出:
"E 145th St, New York, NY 10037, USA"

  • 输入:
"3 Rue Auguste Bartholdi, 75015 Paris, France"
  • 想要的输出:
"Rue Auguste Bartholdi, 75015 Paris, France"

我已经尝试使用 String.prototype.match() 和以下正则表达式:/[^0-9\s].+/ 这对删除数字但如果建筑物有字母入口(35A、20B 等)则不起作用。使用字母字符让我对字符串的其余部分产生了疑问。

最佳答案

我的主要问题是我试图匹配字符串的其余部分并使用 String.match() 保留它,而不是定位字符串的开头并使用 String 删除它.replace().

在使用这个String.replace()态度时解决的几个正则表达式:

address.replace(/^\d+[A-z]?\s/, '')
address.replace(/^[^\s]+\s/, '')

另一种解决方案是使用 String.split() 方法定位空白。这意味着转换为单词数组,删除第一个单词,然后将数组加入一个新的干净字符串。

代码:

let newAddress = fullAddress.split(" ").slice(1).join(" ");

关于javascript - 如何使用正则表达式从地址字符串中删除门牌号和入口?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57467364/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com