excel - 使用 ';' 从文本字符串创建单个单元格列表 分号分隔符
问题描述
我想从存储的另一个单元格中的单个单元格中构建一个列表。字符串有一个分号分隔符';' 分隔字符串 SMTP、smtp、X400、FAX。不幸的是,字符串的 x400 部分也有需要保留的分号。它的分隔符是第二个分号';;'。
我需要一些帮助来扩展昨天的答案,它提供了我需要的输出示例 - https://stackoverflow.com/a/69948563/14638694;和图片一样。 在此处输入图像描述
输入单元格 | 输出单元 |
---|---|
SMTP:userS1@thetest.com;X400:C=GB;A= ;P=TEST;O=Exchange;S=S1;G=user;I=P;;smtp:user1@test.local;FAX:User P . S1[userS1]@test.local | 来自输入单元格的列表 |
X400:C=GB;A=;P=TEST;O=Exchange;S=41;G=user; | X400:C=GB;A= ;P=TEST;O=Exchange;S=41;G=user\ |
SMTP:user2@thetest.com;X400:C=GB;A=;P=TEST;O=Exchange;S=2;G=user;;smtp:user2@test.local;FAX:user 2[user2]@测试本地 | 来自输入单元格的列表 |
X400:C=GB;A=;P=TEST;O=Exchange;S=17;G=user;;FAX:user 17[user17]@test.local | 来自输入单元格的列表 |
SMTP:user3@thetest.com;X400:C=GB;A=;P=TEST;O=Exchange;S=3;G=user;;smtp:user3@test.local;FAX:user 3[user3]@测试本地 | 来自输入单元格的列表 |
X400:C=GB;A= ;P=TEST;O=Exchange;S=4;G=user;;smtp:user4@test.local | 来自输入单元格的列表 |
FAX:user 6[user6]@test.local;X400:C=GB;A= ;P=TEST;O=Exchange;S=6;G=user; | 来自输入单元格的列表 |
smtp:user5@test.local | 来自输入单元格的列表 |
解决方案
一种解决方案是使用嵌套的 SUBSTITUTE 函数:
=SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(A1,";SMTP",CHAR(10)&"SMTP"),";smtp",CHAR(10)&"smtp"),";X400",CHAR(10)&"X400"),";FAX",CHAR(10)&"FAX")
笔记:
- 以上将与 A1 处的输入单元格一样
- 它用换行符替换任何出现在任何已定义协议 ID 之前的分号分隔符 [即 Char(10)]
- SUBSTITUTE 区分大小写(因此需要 SMTP 和 smtp)
- 如果还有其他情况(例如 X400 和 x400),您需要嵌套在另一个 SUBSTITUTE 中以满足这些情况
- 如果(如示例所示)SMTP 将首先出现或根本不出现,您可以删除该协议 ID 的替换
推荐阅读
- javascript - 在循环中随机化数组
- mongodb - MongoDB:查找字段名称以开头的对象
- ios - iOS 12 版本的核心位置出现奇怪的崩溃
- php - 数组()与预期类型“对象”不匹配
- php - 像这样使用 switch 作为动态和分页是否有效?
- ios - 计算tableView中每个单元格的值
- reactjs - 模块构建失败:TypeError:fileSystem.statSync 不是函数
- opennlp - OpenNLP - 命名实体识别 - txt 文件中的 dd.mm.yyyy 日期格式,用于 .bin 模型训练
- c# - 改变方法以提高代码的人机工程学
- github - 如何更新分支的分叉回购?