Javascript 如何设置街道地址的格式?
在中键入任何物理地址并提交,地址将被格式化 例如,请尝试以下操作Javascript 如何设置街道地址的格式?,javascript,node.js,Javascript,Node.js,在中键入任何物理地址并提交,地址将被格式化 例如,请尝试以下操作 1400 West Mockingbird Lane => 1400 W Mockingbird Ln 1323 East Lake St => 1323 E Lake St 1700 Belmont Avenue => 1700 Belmont Ave 4565 Dunhill Court => 4565 Dunhill Ct 1100 west 7th street => 1100 W 7th S
1400 West Mockingbird Lane => 1400 W Mockingbird Ln
1323 East Lake St => 1323 E Lake St
1700 Belmont Avenue => 1700 Belmont Ave
4565 Dunhill Court => 4565 Dunhill Ct
1100 west 7th street => 1100 W 7th St
添加/删除尽可能多的缩写:到目前为止,您尝试了什么?以下是我的答案:-为什么我会得到所有这些负面评论?什么让人失望?否决票是因为事实上没有问题。这个职位应该关闭。另外,编码的行为是通过咖啡因而不是cannibis来增强的。我明白了,将标题重新编辑为问题格式。
var func = {}
func.toTitleCase = function(str) {
if(typeof(str) === 'undefined')
return
return str.toLowerCase().replace(/(?:^|\s|\/|\-)\w/g, function(match) {
return match.toUpperCase();
})
}
func.formatStreetAddress = function(address) {
address = address.replace(/[.,]/g, '')
var replaceWords = {
'apartment': '#',
'apt': '#',
'expressway': 'Expy',
'po box': '#',
'suite': '#',
'ste': '#',
'avenue': 'Ave',
'boulevard': 'Blvd',
'circle': 'Cir',
'court': 'Ct',
'crt': 'Ct',
'drive': 'Dr',
'lane': 'Ln',
'mount': 'Mt',
'highway': 'Hwy',
'parkway': 'Pkwy',
'place': 'Pl',
'street': 'St',
'east': 'E',
'west': 'W',
'south': 'S',
'north': 'N',
'road': 'Rd'
},
formatted_address = []
address.split(' ').forEach(function(word) {
word = word.toLowerCase().trim()
if(replaceWords[word]) {
formatted_address.push(replaceWords[word])
return
}
formatted_address.push(word)
})
formatted_address = formatted_address.join(' ')
formatted_address = formatted_address.replace(/\# /g, '#')
return func.toTitleCase(formatted_address)
}
func.formatStreetAddress('1100 west 7th street')