javascript - 用正则表达式替换捕获的空格未知次数

标签 javascript regex

如果我有一个与城市/州格式 The City, ST 模式匹配的正则表达式,并考虑到某些城镇的名称中包含多个单词,我如何将它们简化为这种格式?

new_town_city_st  

我的表达式:/(\w+(\s))*(\w+)(,\s)(\w{2})/

当我不知道每个城镇名称有多少个单词时,如何用下划线替换捕获(空格)的位置?

最佳答案

只需将所有重复的非单词字符 (\W) 替换为下划线,如下所示:

var locationInput = 'New Town City, ST';

var underscoreLocation = function(location) {
    return location.replace(/\W+/ig, '_').toLowerCase();
};

var locationOutput = underscoreLocation(locationInput);
// => new_town_city_st

关于javascript - 用正则表达式替换捕获的空格未知次数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18992987/

相关文章:

javascript - 如何为边框设置动画,使其从头到尾缓慢显示

regex - 将 shell 参数传递给 awk 正则表达式

java - 正则表达式查找数字后跟字母

正则表达式根据旁边的内容在 powershell 中选择正确的时间

javascript - 滚动预定数量的 px 后固定在 div 上的位置

javascript - 使用带有偶数张幻灯片的光滑 slider 来显示

java - 关于 XSS 的一些说明

javascript - 我可以在 useEffect Hook 内设置状态吗

sql - 在 MySQL 的正则表达式中使用列

regex - 这个正则表达式是什么意思?