WPS表格中可使用四种方法提取URL域名:一、SUBSTITUTE与FIND嵌套定位协议和路径;二、TEXTBEFORE与TEXTAFTER组合(WPS 2023+);三、兼容无协议URL的IF+SUBSTITUTE通用公式;四、VBA正则自定义函数。

如果您在WPS表格中处理大量URL数据,需要快速提取其中的域名部分,则可借助内置函数组合实现精准剥离。以下是提取URL域名的多种公式用法:
一、使用SUBSTITUTE与FIND嵌套提取主域名
该方法适用于标准HTTP/HTTPS协议URL,通过定位“://”和第一个“/”的位置,截取二者之间的字符串,从而获得含www或不含www的完整主域名。
1、在目标单元格输入公式:=MID(A1,FIND("://",A1)+3,FIND("/",A1,FIND("://",A1)+3)-FIND("://",A1)-3)
2、将A1替换为实际存放URL的单元格引用(如B2、C5等)
3、按Enter确认,结果即显示类似“www.example.com”或“example.com”的域名
4、向下拖拽填充柄以批量应用至其他行
二、使用TEXTBEFORE与TEXTAFTER组合(WPS 2023+版本支持)
该方法依赖WPS新版文本函数,语法简洁、容错性较强,能自动跳过协议头并截断路径部分,适合结构清晰的URL。
1、在目标单元格输入公式:=TEXTBEFORE(TEXTAFTER(A1,"://"),"/")
2、确保A1为原始URL所在单元格,若URL无协议头(如“example.com/path”),需先补全为“http://example.com/path”再使用
3、按下Enter后,返回值为纯域名,不含端口号与路径
三、兼容无协议URL的通用提取公式
该方案通过多重条件判断,统一处理含协议(http://、https://、ftp://)与不含协议的URL,避免#VALUE!错误,并自动剔除端口号(如:8080)。
1、在目标单元格输入公式:=IF(ISNUMBER(FIND("://",A1)),TRIM(MID(SUBSTITUTE(A1,"/",REPT(" ",100)),100,100)),TRIM(LEFT(SUBSTITUTE(A1,"/",REPT(" ",100)),100)))
2、复制该公式到其他目标单元格
3、对结果中含端口的域名(如“site.com:8080”),可额外嵌套: =LEFT(B1,FIND(":",B1&":")-1)(假设B1为上一步结果)
四、使用正则表达式自定义函数(VBA方式)
该方法需启用WPS宏功能,通过编写正则匹配逻辑,精准捕获域名主体,支持复杂格式如子域名、国际化域名及IP形式URL。
1、按Alt+F11打开VBA编辑器,插入新模块
2、粘贴以下代码:Function GetDomain(url As String) As String\nDim regEx As Object\nSet regEx = CreateObject("VBScript.RegExp")\nregEx.Pattern = "^(?:https?://|ftp://)?([^/\r\n:]+)"\nIf regEx.Test(url) Then GetDomain = regEx.Execute(url)(0).SubMatches(0) Else GetDomain = ""\nEnd Function
3、返回表格,在单元格中输入:=GetDomain(A1)
4、保存文件为启用宏的.wps格式,并允许宏运行










