excel - 试图找到excel公式来分隔excel中的复杂文本

标签 excel text excel-formula

我正在尝试找到将以下内容合并为单个列的最有效方法

文本以 3 种不同的方式出现,=== 之后的值就是它应该变成的值。

LOT: 4 TYP: SP PLN: 262354 === 4SP262354
LOT: 2 RP: 909144 === 2RP909144
LOT: 174 SP: 199682 === 174SP199682

假设要拆分的文本都在 L3 列中,我有以下内容
M is =MID(L3,5,FIND("TYP",L3)-6) ===  1
N is =MID(L3,FIND("TYP:",L3)+4,FIND("PLN",L3)) ===  SP PLN: 262354
O is =MID(N3,1,FIND(" PLN",N3)-1) === SP
P is =RIGHT(N3,FIND(": ",N3)-2) ===262354

它适用于某些人,但不适用于其他人,并且不适用于没有“TYP”的情况。

在 Python 中,我们可以从 start char no 到 end char no 即 text[1:9] 并使用 find 来定位 1 和 9 的值,但 mid 使用从该点开始的字符数和开始,因此会导致问题。

最佳答案

试试这个公式:

=SUBSTITUTE(
     SUBSTITUTE(
         SUBSTITUTE(
             SUBSTITUTE(
                 SUBSTITUTE(A1, " ", ""), "TYP:", ""), "PLN:", ""), "LOT:", ""), ":", "")

最里面的替换SUBSTITUTE(A1, " ", "")删除所有空格。其他替换删除以下内容:
TYP:
PLN:
LOT:
:   <-- remove any stray commas

输出:

enter image description here

当然,你总是可以用另一种方式处理这个问题。您可以使用 Excel 从下拉菜单中查找替换功能,然后分别执行这些步骤。

关于excel - 试图找到excel公式来分隔excel中的复杂文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45715184/

相关文章:

excel - 查找Excel单元格中重复出现的单词的频率和位置

events - 带有命令按钮上的MouseMove事件的VBA Excel事件编译错误

Excel VBA 按字母顺序循环遍历范围

jquery - 获取用户在文本框中写入的文本,并使用 jQuery 将其显示在另一个 div 中

java - Sqlsheet公式评估

excel - 需要找到与两列条件匹配的值。可能的 VLOOKUP

excel - 如何修复代码以将所有工作表保存为一个 PDF? VBA

c - 如何从 C 中的文本文件中读取十六进制数据

python - 使用正则表达式混合字符串

excel - 如果值在范围内,如何获得特定的输出