[转]EXCEL截取字符串中某几位的函数——LeftMIDRight及Find函数的使用

原文地址:http://blog.sina.com.cn/s/blog_3f136a180102ymq5.html

EXCEL截取字符串中某几位的函数

——Left MID Right及Find函数的使用  

 

一、截取Excel字符串的部分字符,我们可以使用Mid、Left、Right等函数从长字符串内获取一部分字符。
  LEFT函数:
  LEFT(text,num_chars)
  Text是包含要提取字符的文本串。Num_chars指定要由LEFT 所提取的字符个数,该函数从左边开始提取字符。
  MID函数:
  MID(text,start_num,num_chars)
Text是包含要提取字符的文本串。Start_num是文本中要提取的第一个字符的位置。num_chars是要提取的字符个数,从左边开始提取字符。
例:如B1单元格是ABC123D,现在要提取其中的123到C1里在C1输入公式:=MID(B1,4,3)
  RIGHT函数:
  RIGHT(text,num_chars)
  Text是包含要提取字符的文本串。Num_chars指定希望 RIGHT 提取的字符个数。该函数从右边开始提取字符。

二、(Find函数)

  此招用来对原始数据中某个字符串进行定位,以确定其位置。因为该招进行定位时,总是从指定位置开始,返回找到的第一个匹配字符串的位置,而不管其后是否还有相匹配的字符串,有点像瞎子摸象,摸到哪就说哪,因此取名“瞎子摸象”。

  使用语法

  FIND(find_text,within_text,start_num)

  Find_text 是要查找的文本。

  Within_text 是包含要查找文本的文本。

  Start_num 指定开始进行查找的字符。within_text 中的首字符是编号为 1 的字符。如果忽略 start_num,则假设其为 1。

  注意:

  使用 start_num 可跳过指定数目的字符。例如,假定使用文本字符串“AYF0093.YoungMensApparel”,如果要查找文本字符串中说明部分的第一个“Y”的编号,则可将 start_num 设置为 8,这样就不会查找文本的序列号部分。FIND 将从第 8 个字符开始查找,而在下一个字符处即可找到 find_text,于是返回编号 9。FIND 总是从 within_text 的起始处返回字符编号,如果 start_num 大于 1,也会对跳过的字符进行计数。

  如果 find_text 是空文本 (),则 FIND 则会返回数值1。

  Find_text 中不能包含通配符。

  如果 within_text 中没有 find_text,则 FIND返回错误值 #VALUE!。

  如果 start_num 不大于 0,则 FIND返回错误值 #VALUE!。

  如果 start_num 大于 within_text 的长度,则 FIND 返回错误值 #VALUE!。

  应用示例:

EXCEL截取字符串中某几位的函数——Left MID Right及Find函数的使用 - 不懂 - 不懂_超越
  上图中,对含有不同地方的数据,利用“Find”函数,非常简单地确定了“省”出现的位置。

  详细解释

  公式“=FIND(省,A2)”中,“省”表示要查找的文本为“省”,(实际使用中,也可以很长的一串字符)。要找查找的对象是A2单元格的内容“广东省东莞市东城区…”,因为没有指定起始位置,所以系统从第一位开始。返回的“3”,表示“省“字在第三位。而“黑龙江省哈尔滨市…”则返回4。

  与Find类似,Search函数也有相同的功能。它们的区别是,Find区分大小写,而Search不分大小写(当被查找的文本为英文时)。
  另外,在Excel中,对文本进行处理的很多函数都提供了一个特别用来处理双字节字符(如中文,日文)的函数,一般是在原函数后加“B”,如FIND, 就有一个FINDB。之前讲过的LEFT,相对应的就是LEFTB等。其实,我们在实际应用中,使用不带“B”的函数就足够了。如果你想使用带“B”的函数,则要特别注意,尤其是在组合运用函数时,其中一个函数使用带“B”的形式,则其它有带“B”形式的函数,全部都要使用其带“B”的形式,否则结果极可能是错的。
计算字符串的长度(len)
在Excel中,如果要计算字符串的长度,可以使用LEN函数计算字符串的长度。Excel2007可使用LEN函数计算字符串的长度。
 
如上图所示,在B2单元格输入公式:
=LEN(A2)
按回车键即可计算字符串的长度,返回字符串的长度。
Excel2007可使用LEN函数计算字符串的长度。


实例一:
比如有下面文本:
202.96.119.221:80@HTTP$1.2#浙江省金华市
我想截取$前的字符(长度不固定),如何实现?
”数据在A列 则B列数据为=MID(A1,1,FIND("$",A1,1)-1)

 

参考资料:不懂_超越.

http://blog.163.com/budong_weimin_zh/blog/static/1291985242013482409524/

转载于:https://www.cnblogs.com/dirgo/p/11168188.html

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在 Java ,你可以使用以下几种方法来截取字符串的一部分: 1. 使用 `substring()` 方法:`substring(int beginIndex)` 或 `substring(int beginIndex, int endIndex)` 方法可以截取字符串的指定部分。`beginIndex` 是截取开始的索引位置(包括该位置),而 `endIndex` 是截取结束的索引位置(不包括该位置)。 ```java String str = "Hello, World!"; String subStr = str.substring(7); // 截取从索引位置 7 开始的子字符串,结果为 "World!" String subStr2 = str.substring(7, 12); // 截取从索引位置 7 到 12 的子字符串,结果为 "World" ``` 2. 使用 `substring()` 方法与 `indexOf()` 方法:可以结合使用 `substring()` 方法和 `indexOf()` 方法来截取字符串的一部分。`indexOf()` 方法用于找到指定字符或字符串的索引位置。 ```java String str = "Hello, World!"; int startIndex = str.indexOf("W"); // 找到字符 "W" 的索引位置 String subStr = str.substring(startIndex); // 截取从 "W" 开始的子字符串,结果为 "World!" ``` 3. 使用正则表达式(Regex):使用正则表达式可以根据特定的模式来截取字符串。可以使用 `Pattern` 和 `Matcher` 类来实现。 ```java import java.util.regex.Pattern; import java.util.regex.Matcher; String str = "Hello, World!"; Pattern pattern = Pattern.compile("W[a-z]+"); // 匹配以 "W" 开头的小写字母组成的字符串 Matcher matcher = pattern.matcher(str); if (matcher.find()) { String subStr = matcher.group(); // 获取匹配到的子字符串,结果为 "World" } ``` 以上是几种常用的截取字符串的方法,你可以根据具体的需求选择适合的方法来截取字符串的一部分。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值