MS Excel: 提取字符串中第N个和第N个字符之间
MS Excel: Extract between the Nth and Nth Character in a string
使用 MS Excel 公式(否 VBA/Macro),我想提取字符串中第 N 和第 N 个字符 and/or 之间的字母。示例:我在 A2 和 A3 列中有文本,我想提取以下每个字符串中位于第 4 space 和第 9 space 之间的文本。
A2 列:约翰尼去商店买了一个苹果和一些葡萄
专栏A3:没想到这么早回家,但下雨没办法
结果:
A2 列:存储并购买了一个苹果
A3栏:这么早回家
您正在寻找的是一个子字符串函数,它在 excel 中并不真正可用,我建议查看本教程以了解执行相同功能的函数 https://www.excel-easy.com/examples/substring.html,并尝试找到最适合您的用例的。
我认为 MID 函数最适合您的用例。
对于 Microsoft 365 或 Excel 2019,您可以将 TEXTJOIN()
与 FILTERXML()
结合使用:
B1
中的公式:
=TEXTJOIN(" ",,FILTERXML("<t><s>"&SUBSTITUTE(A1," ","</s><s>")&"</s></t>","//s[position()>4][position()<6]"))
xpath 表达式首先选择从第 5 个单词开始的所有元素,因此仅 returns 来自相应数组的前 5 个元素。因此 //s[position()>4][position()<6]
也可以写成 //s[position()>4 and position()<10]
.
使用 MS Excel 公式(否 VBA/Macro),我想提取字符串中第 N 和第 N 个字符 and/or 之间的字母。示例:我在 A2 和 A3 列中有文本,我想提取以下每个字符串中位于第 4 space 和第 9 space 之间的文本。
A2 列:约翰尼去商店买了一个苹果和一些葡萄
专栏A3:没想到这么早回家,但下雨没办法
结果:
A2 列:存储并购买了一个苹果
A3栏:这么早回家
您正在寻找的是一个子字符串函数,它在 excel 中并不真正可用,我建议查看本教程以了解执行相同功能的函数 https://www.excel-easy.com/examples/substring.html,并尝试找到最适合您的用例的。 我认为 MID 函数最适合您的用例。
对于 Microsoft 365 或 Excel 2019,您可以将 TEXTJOIN()
与 FILTERXML()
结合使用:
B1
中的公式:
=TEXTJOIN(" ",,FILTERXML("<t><s>"&SUBSTITUTE(A1," ","</s><s>")&"</s></t>","//s[position()>4][position()<6]"))
xpath 表达式首先选择从第 5 个单词开始的所有元素,因此仅 returns 来自相应数组的前 5 个元素。因此 //s[position()>4][position()<6]
也可以写成 //s[position()>4 and position()<10]
.