javascript - 正则表达式匹配开头和结尾没有中间
问题描述
我怎样才能合并这两个正则表达式?这很有趣,因为它允许匹配字符串的开头和结尾而不触及中间的内容。
function cleanURL(url) {
url = url.replace(/^(?:https?:\/\/)?(?:www\.|ww\d\.|w\d\d\.)?/, '')
url = url.replace(/(\/.*)/, '')
return url
}
console.log(cleanURL('https://hello-world.example.tld/yello-blue/green'))
结果:hello-world.example.tld
解决方案
与其尝试使用正则表达式来梳理 URL 的一部分,不如使用URL
该类:
new URL("https://hello-world.example.tld/yello-blue/green").hostname
这并不意味着它不能用正则表达式来完成,你只需要寻找介于//
and之间的任何内容/
。
所有这一切,我不确定你的实际意图是什么,因为有一堆恶作剧www
等等。该URL
方法不会过滤,它只会返回主机名。
推荐阅读
- react-native - 如何访问 Text 组件内的文本?
- sql-server - 使用 SQL 从上一行中的列中减去总计数
- java - 当我转到下一页搜索关键字不适用时,jsp分页问题
- cordova - 当我在科尔多瓦应用程序中添加 platfrom 时,我遇到了这个错误
- python - 获取与组内最小和最大日期相关的值的差异 - Python
- excel - Excel VBA循环遍历单元格列并粘贴到word
- javascript - 如何使用ajax提交具有相同名称属性的多个字段的表单?
- for-loop - Labview 将多个片段保存到一个文件中
- python - 宽到长数据框返回 NaN 而不是浮点值
- javascript - 获取 Chrome 扩展程序读取复制文本的权限