js通过正则表达式解析地址信息中的省市区
时间: 2024-10-16 17:03:58 浏览: 20
在JavaScript中,使用正则表达式解析地址信息中的省市区通常涉及到查找特定模式并提取相关部分。以下是一个基本的例子,展示如何匹配常见的中国地址格式:
```javascript
const addressRegex = /^(?:(?:(?:\d+|[A-Za-z]+)路|街道)(?:[ ,]+)?(?:\d+号)?)+?(?:\s*(区|县|市|区县|城区))+?(?:\s*(?:省|自治区|直辖市))+?$/;
function parseAddress(addressString) {
const match = addressString.match(addressRegex);
if (match) {
// 匹配结果数组,从前往后分别为:路、街巷名、号、区县、城市、省份
const [province, city, district] = match.slice(-3).map((part, index) => part.trim());
return { province, city, district };
} else {
return null; // 如果无法匹配,则返回null
}
}
// 示例
const addr = "北京市朝阳区建国门外大街甲6号";
const parsed = parseAddress(addr);
console.log(parsed); // 输出:{ province: '北京市', city: '朝阳区', district: '建国门外大街' }
阅读全文