Excel从右向左匹配--进化

商品名称  
俞兆林 睡衣女家居服男士情侣睡衣长袖开衫纯棉休闲家居服套装可外穿 女款粉色套装 L 女款粉色套装 L
俞兆林 睡衣女家居服男士情侣睡衣长袖开衫纯棉休闲家居服套装可外穿 女款粉色套装 XL 女款粉色套装 XL
浪莎睡衣男家居服情侣睡衣女加绒加厚夹棉珊瑚绒秋冬季长袖纯色法兰绒家居服套装 藏青男【衣+裤】 175/XL 藏青男【衣+裤】 175/XL
浪莎睡衣男家居服情侣睡衣女加绒加厚夹棉珊瑚绒秋冬季长袖纯色法兰绒家居服套装 藏青男【衣+裤】 170/L 藏青男【衣+裤】 170/L
浪莎睡衣男家居服情侣睡衣女加绒加厚夹棉珊瑚绒秋冬季长袖纯色法兰绒家居服套装 藏青男【衣+裤】 180/XXL 藏青男【衣+裤】 180/XXL
浪莎睡衣男家居服情侣睡衣女加绒加厚夹棉珊瑚绒秋冬季长袖纯色法兰绒家居服套装 藏青男【衣+裤】 185/XXXL 藏青男【衣+裤】 185/XXXL
浪莎睡衣男家居服情侣睡衣女加绒加厚夹棉珊瑚绒秋冬季长袖纯色法兰绒家居服套装 粉色女【衣+裤】 160/M 粉色女【衣+裤】 160/M
浪莎保暖内衣男士纯棉秋衣秋裤男女全棉薄款棉毛衫套装冬季 男藏青(上衣+裤子) XL 男藏青(上衣+裤子) XL

 

上次的从右向左匹配,是使用的search函数进行搜索,但是因为涉及前面也有空格,所以就需要手动去运算,计算出来Search的参数写多少数字合适,如果是量级少的话还好,但是如果量级很多,这个方法就不太合适,介绍一个新的思路,使用REPT函数+TRIM函数进行计算

最终公式如上:=TRIM(RIGHT(SUBSTITUTE(A1," ",REPT(" ",LEN(A1))),LEN(A1)*2))

对公式进行拆解,最内层的函数是REPT函数,可以指定次数重复文本,可用REPT在一个单元格中重复填写一个文本字符串,

X = REPT(" ",LEN(A1))可以变成A1长度相同的空格字符串

Y = SUBSTITUTE(A1," ",X)这个函数我们写了三个参数,第四个参数如果省略代表全部替换,可以将A1字符串的空格全部替换为A1长度相同的空格字符串

Z = RIGHT(Y,LEN(A1)*2)这里我们取已经将A1的空格替换的字符串,右边和A1长度一样的两倍,(PS:因为A1字符串后面也会有空格,所以*2)

@ = TRIM(Z)可以去除所有的空格,删除字符串中多余的空格,但是会在英文字符串中保留一个作为词与词之间分隔的空格。

总结:因为使用的是A1的长度,所以即便是A1变化,也不会影响我们取后面的字符串(除非这个规律更加复杂,后面有空格不一致,这个规律又会被打破,我们再考虑新的算法)万事万物皆有其规律,心有猛虎,细嗅蔷薇,共勉~

你可能感兴趣的:(Excel)