最新消息:20210816 当前crifan.com域名已被污染,为防止失联,请关注(页面右下角的)公众号

【已解决】Excel中处理英文单词去重和分组

Excel crifan 2160浏览 0评论
现有一个excel:
里面有几列单词。
希望做到:
  • 去重:去重一些重复的单词
  • 把单词和词组分开:
    • 比如单词在上面
    • 词组在下面
excel 去重
筛选唯一值或删除重复值 – Excel
https://support.office.com/zh-cn/article/筛选唯一值或删除重复值-ccf664b0-81d6-449b-bbe1-8daaec1e83c2
“删除重复值
1. 选择单元格区域,或确保活动单元格所在表中。
2. 在数据选项卡上,单击删除重复项(在数据工具组中)。
3. 请执行下列一项或多项操作: 在列下选择一个或多个列。 …
4. 单击确定,然后将出现一条指示多少重复值已被删除,或保留了多少唯一值。 单击确定关闭此消息。
5. U 撤销更改通过单击撤消(或按键盘上的Ctrl + Z)。”
发现了 444 个重复值,已将其删除;保留了 1638 个唯一值。
对于单词和词组排序的话:
目前想到的方案:
  • excel写vba脚本
  • 用python写脚本
  • 用VSCode去正则处理
现在用第三种
其中还有些特殊的,去掉:
" *\n
和:
"
和:
 +\n
\n
(\w+) */ *(\w+)
$1\n$2
^ +(.+)$
$1
然后基本上处理完了普通的特殊情况。
对于复杂的特殊情况,无法处理。
现在只能去:
把单个单词提取出来
再去把非单个单词提取出来
还要特殊过滤:
’
'
[  ]+$
把那些 空格 和特殊的不可见类似于空格的字符,去除掉
替换中文的感叹号:
!
!
然后去分出 单词还是词组
^([\w'\-]+)$\n
发现用VSCode的正则,只能匹配,但是无法提取出来
-》无法把单词都单独存取出来,
无法把词组都提取出来
-》不过突然发现是可以:
单词中间没空格
词组中间都有空格
就可以:
分别匹配,剩下的都删除
即可得到分开的内容了。

然后先去删除掉单词
^([\w'ˈ\-]+)$\n
再去去掉词组:
^((.+ +.+)|([\w.]+[!.]))$\n
升级后的版本:
^((.+[ ./…]+.+)|([\w.]+[!.]))$\n
即可分别得到:
(1)分组列表
(2)单词列表

转载请注明:在路上 » 【已解决】Excel中处理英文单词去重和分组

发表我的评论
取消评论

表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
83 queries in 0.188 seconds, using 22.10MB memory