首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用脚本自动搜索和替换Google

使用脚本自动搜索和替换Google
EN

Stack Overflow用户
提问于 2020-03-01 23:42:25
回答 1查看 135关注 0票数 1

我通常不使用脚本,但我对公式相当有信心:

我有一组单元格中的学生名单。例如:

在cell AF1中,上面写着:汤米·琼斯·玛塔·刘易斯·詹姆斯、杰西卡·詹妮弗·安尼斯·伯恩斯、雷蒙德

在单元格AF2中,它说:

杰西卡·詹姆斯·邦斯,雷蒙德·刘易斯,玛尔塔·戴维森,乔安娜·菲尔德,詹妮弗

在那一栏里有超过150个细胞。

所有受影响的单元格都在AF列中(它们是根据级联列表创建的,因此它们是不同公式的结果)。

我需要确保他们都是姓,姓。

我一直试图从其他人的脚本中复制/粘贴似乎有用的脚本,但我感到沮丧并删除了所有这些脚本:

我试图创建一个包含以下内容的长脚本:

var to_replace = " Jonathan ";var replace_with = "Adkins,Jonathan“;

var to_replace =“乔舒亚·阿德金斯”;变量replace_with = "Adkins,约书亚“;(全部400个名字)

其中包括:

替换页(工作表,'Jonathan Adkins','Adkins,Jonathan');replaceinsheet(工作表,‘约书亚·阿德金斯’,'Adkins,约书亚‘);(全部400个名字)

一个这样列出他们的:replaceInSheet(价值观,'Jonathan‘,'Adkins,Jonathan');

我尝试在具有名称的级联列旁边创建额外的列,并使用这个公式:创建一个脚本来定义=arrayreplace,然后使用这个公式。=数组替换(AF1,AI2:AI,AJ 2:AJ)

我卡住了。有人能帮忙吗?

我创建了一个样本表,希望能展示我在说什么:

https://docs.google.com/spreadsheets/d/1gyAdIxletLuJzubVkOmgYmlgt5iw0Ezul1kS4uLbBu8/edit?usp=sharing

任何帮助都将不胜感激。

EN

回答 1

Stack Overflow用户

发布于 2020-03-02 06:17:31

内置查找和替换:

选择要更改的范围:?\s+(A-z+)

  • Replace:$2,!A1:L10

  • Edit >查找和替换

  • Find:(\w+),Sheet1 $1

  • Checkmark:使用正则表达式

H 111单击替换所有h 212f 213

公式:

或者,你可以用,

代码语言:javascript
复制
=ARRAYFORMULA(REGEXREPLACE(L2:L10,"(\w+),?\s+(\w+)","$2, $1"))

解释:

  • \w:A字母(\word)
  • ,:文字,
  • \sspace
  • +:以前匹配字符中的一个或多个
  • ?:一个或零个以前匹配的字符
  • ():捕获组
  • $:替换编号捕获组
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60480849

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档