【回答社区问题】替换非英文单词字符间的空格,用JSA自定义函数实现

懒人办公
懒人办公

创作者俱乐部成员

【原帖】

【题目描述】

如下图,将A列中的空格替换成"-",但是不能替换掉英文单词之间的空格。例如:中国银行 Bank OF CHINA 281——>中国银行-Bank OF CHINA-281

【操作效果】

用JSA编写了一个自定义函数Spaces_To_Minus,在B2单元格中输入函数:=spaces_to_minus(A2),向下填充,即可完成替换操作。

【JSA代码】

按ALT+F11打开WPS宏编辑器,复制下方代码粘贴到编辑器中。

function Spaces_To_Minus(rg) //定义一个自定义函数spaces_to_minus,rg为单元格对象

{

str=rg.Value2; //将所选单元格的值赋值给变量str

str=str.replace(/\s/g,'-'); //将所有字符串中的空格都替换为“-”

str=str.replace(/([A-Za-z])(-)([A-Za-z])/g,'$1 $3'); //再将英文字母间的“-”替换回空格

return str; //返回函数结果

}

【往期内容】

1.对明细数据分类汇总,统计库存

2.两表按关键字相互链接,快速查找定位

3.批量创建和删除工作表

4.批量将工作表拆分为独立工作簿

5.批量将工作簿合并为工作表,免费实现会员功能

6.实时查询数据,高端的效果,往往只需要简单的代码

7.按照内容拆分工作表,免费实现会员功能

8.批量合并工作簿,免费实现终极会员功能

9.自动核对报表报送情况,表姐表妹的福音来了

10.以指定单元格内容批量命名表格文件

11.用工作表做数据库,将出库单保存为出库明细

12.用AI拆分工作表,一句话就能搞定

13.在表格中按名称批量插入对应图片

14.按分隔符拆分数据

15.合并同类项,按部门合并姓名,并用顿号隔开

【题目表格下载】

https://kdocs.cn/l/csSJofXeYXup

贵州省
浏览 1214
1
18
分享
18 +1
16
1 +1
全部评论 16
 
梦
学习了,提高办公效率!
· 山西省
回复
 
戮1410446177
非常好
· 中国
回复
 
的噢dou 豆豆~
满满的干货,感谢分享👍🏻👍🏻👍🏻
· 广东省
回复
 
爆米花
厉害 高手
· 四川省
回复
 
꯭ C。
非常感谢分享。[强][强][强]
· 四川省
回复
 
Qing
厉害的👍
· 湖北省
回复
 
cx.my baby
👍👍👍👍!!!感谢分享!
· 中国
回复
 
小欧
非常好🥰🥰🥰🥰
· 广东省
回复
 
微信用户
非常好,赞赞赞赞赞
· 广东省
回复
 
刘霞
太厉害了,满满的干货知识,点赞
· 山西省
回复
 
随安
非常不错
· 辽宁省
回复
 
wendy
非常不错
· 云南省
回复
 
18683121721
涨芝士了
· 四川省
回复
 
18683121721
这样可以嘛
· 四川省
回复
 
范纯浪子
厉害
· 江苏省
回复
 
hcj
满满的干货
· 广东省
回复