Arduino String.h库函数详解

 

此库中包含
1 charAT()
2 compareTo()
3 concat()
4 endsWith()
5 equals()
6 equalslgnoreCase()
7 getBytes()
8 indexOf()
9 lastlndexOf()
10 length()
11 replace()
12 setCharAt()
13 startsWith()
14 substring()
15 toCharArray()
16 toInt()
17 toLowerCase()
18 toUpperCase()
19 trim()

charAT(n)

描述
获取字符串的第n个字符

参数
n :是一个索引,作为下标

str1.compareTo(str2)

描述
compareTo函数是比较两个字符串,相同返回两个字符串当前比较字符串的差值。前-后

参数
str1 : 第一个字符串
str2 : 第二个字符串

返回
compareTo()的返回值是整型,它是先比较对应字符的大小(ASCII码顺序),如果第一个字符和参数的第一个字符不等,结束比较,返回他们之间的差值,如果第一个字符和参数的第一个字符相等,则以第二个字符和参数的第二个字符做比较,以此类推,直至比较的字符或被比较的字符有一方全比较完,这时就比较字符的长度

str1.concat(str2)

描述
字符串拼接,其实在C++语言中字符串拼接可以直接让前字符串+后字符串

参数
str1 : 第一个字符串
str2 : 第二个字符串

返回
无返回值,拼接好的字符串在str1中

str1.endsWith(str2)

描述
字符串尾部判断对比,判断str1尾部是否是字符串str2,当然你也可以用它来判断'\n'

参数
str1 : 第一个字符串
str2 : 第二个字符串

返回
布尔类型

str1.equals(str2)

描述
判断字符串是否相等

参数
str1 : 第一个字符串
str2 : 第二个字符串

返回值
布尔类型

str1.equalslgnoreCase(str2)

描述
判断字符串是否相等,忽略大小写

str1.getBytes(buf,len)

描述
字符串的复制,和和函数 toCharArray()功能非常相识。

参数
string1:原本的字符串
buf:要搬移的目的变量
len:字符串长度

indexOf()

描述
在字符串中选择特定的字符,并返回位置的功能函数(正向)。如果你想在一个很长的字符串中查找这个特别的关键字,可以使用这个函数。
string1.indexOf(val);
string1.indexOf(val,from);

参数
string1:原本的字符串
val:想要找的关键字,可以是char或 string 字符串。
from:选择性参数,你可以特别指定从那个位置开始寻找这个关键字。

返回值
成功返回位置,失败返回-1

lastlndexOf()

描述
和indexOf一样,只不过是反向查找

str1.length()

描述
测量字符串长度

参数
str1:被测字符串变量

返回值
字符串长度

replace()

描述
字符串替换,string1.replace(string2,string3)

参数
string1:原本的字符串。
string2:在字符串中欲被替换的字符串。
string3:要替换之后的新字符串。
  
返回值

setCharAt()

描述
字符替换,string1.setCharAt(i,charl)

参数
string1:原本的字符串。
i:字符串中欲被换掉的字符的位置。
charl:要替换的字符,注意只有一个字符,而不是字符串。

返回值

startsWith()

描述
判断字符串是否已某个特殊的字符串开始的,string1.startsWith(string2)

参数
string1:原本的字符串。
string2:判断是不是已这个字符串开始。

返回值
布尔代数,true 和 false

substring()

描述
用来截取字符串中间的某一位置。另外是决定那里结束,
string1.substring(from); //返回 from 之后的
string1.substring(from,to); //返回 from 和 to 之间的

参数
string1:原本的字符串
from:要截取的字符串从第几个字开始。
to:要截取后面的第几个字

返回值
字符串

toCharArray()

描述
把string拷贝char中,toCharArray函数是字符串处理中常用的一个函数,你可以把他当成string转char[]的转换函数,或者复制文字的函数,他的功能和getBytes()非常相似,toCharArray()函数转换后是呈现文字,而getBytes()函数转换后是呈现数字。
string1.toCharArray(buf,len);

参数
string:原本的字符串。
buf:指定的char[]的位置,注意char[]的空间,一定要等于或大于复制的大小,不然存储器和程序都会产生不可预期的问题。
len:要复制的字符串长度。  

返回值
要复制的字符串长度

toInt()

描述
字符串转成int
string1.toInt();

参数
string1:字符串,如"123"

返回值
整数,如 123

toLowerCase()

描述
把英文全部转换成小写

使用方式
str1.toLowerCase();

返回值

toUpperCase()

描述
把英文全部转换成大写

使用方式
str1.toUpperCase();

返回值

trim()

描述
自动清除字符串中最前面和最后面的空白数据。
string1.trim();

参数
string1:原本的字符串

返回值

arduino 字符解析的更多相关文章

  1. arduino json 解析

    #include <ArduinoJson.h> void setup() { Serial.begin(9600); DynamicJsonDocument jsonBuffer(200 ...

  2. 2.4 使用ARDUINO控制MC20进行GPS数据的获取和解析

    需要准备的硬件 MC20开发板 1个 https://item.taobao.com/item.htm?id=562661881042 GSM/GPRS天线 1根 https://item.taoba ...

  3. 1000多块整个插板,arduino + android 蓝牙插板的实现--屌丝版

       需求描述 儿子有一堆充电玩具,基本上都是锂电池,经常插上去充电忘了到时拔下来,所以需要一块能设置接通时间的插板以保障电池的安全.   硬件设计: 首先需要一块插板,接着需要一个继电器,然后采用a ...

  4. js解析Json字符串的方法

      要把一个xml字符串转(“1,2,3,4,5,6,7,8,1,2”)换成数组的形式,每个值都应该是number类型的,想当然的就用了split方法,结果...问题来了,服务器要求数组的值是数字,而 ...

  5. boost.spirit之解析C++头文件

    环境:win7_64旗舰版,VS2008 场景:C++与lua交互是比较繁琐的,当我们编写一个C++类后,如果要给lua使用,就必须写一个lua包装类,将lua与原始C++类关联起来.其实这部分代码编 ...

  6. Log4j源码解析--Layout类解析

    本文转载上善若水的博客,原文出处:http://www.blogjava.net/DLevin/archive/2012/07/04/382131.html.感谢作者的分享. Layout负责将Log ...

  7. JavaScript:['1','2','3'].map(parseInt)问题解析

    最近碰到了['1','2','3'].map(parseInt)这种看似不起眼陷阱却极大的问题. 这乍一看,感觉应该会输出[1,2,3].但是,实际上并不是我们想的这样.你可以现在打开console, ...

  8. QT json字符串生成和解析

    1         QT json字符串生成和解析 1.1  QT Json解析流程 (1)  字符串转化为QJsonDocument QJsonParseError json_error; QJso ...

  9. cJONS序列化工具解读二(数据解析)

    cJSON数据解析 关于数据解析部分,其实这个解析就是个自动机,通过递归或者解析栈进行实现数据的解析 /* Utility to jump whitespace and cr/lf *///用于跳过a ...

随机推荐

  1. Hibernate自定义简单主键生成

    Hibernate自定义主键生成 当使用Hibernate定义pojo的时候,有时候需要生成一定规则的数据表主键,这时候我们可以采用自定义主键生成方式去生成主键. 例如: 1.在pojo属性中定义数据 ...

  2. Installation error: INSTALL_FAILED_VERSION_DOWNGRADE Android

    我们在安装新的 APk 的时候.会出现 Installation error: INSTALL_FAILED_VERSION_DOWNGRADE 原因:  是由于 androidversionCode ...

  3. react 项目实战(七)用户编辑与删除

    添加操作列 编辑与删除功能都是针对已存在的某一个用户执行的操作,所以在用户列表中需要再加一个“操作”列来展现[编辑]与[删除]这两个按钮. 修改/src/pages/UserList.js文件,添加方 ...

  4. Django打造大型企业官网(一)

    一.nvm的安装 (1)下载:nvm1.16 (2)安装完成后添加环境变量 C:\Users\Administrator\AppData\Roaming\nvm (3)修改settings.txt,将 ...

  5. c# 钩子

    1.setWindowsHookex详解 http://blog.csdn.net/mmllkkjj/article/details/6627188 函数功能:该函数将一个应用程序定义的挂钩处理过程安 ...

  6. mongodb配置复制集replset

    Mongodb的replication主要有两种:主从和副本集(replica set).主从的原理和mysql类似,主节点记录在其上的所有操作oplog,从节点定期轮询主节点获取这些操作,然后对自己 ...

  7. 【POI2007】【Bzoj 1103】大都市meg

    http://www.lydsy.com/JudgeOnline/problem.php?id=1103 在线查询某点到根节点的点权和,参考DFS序&欧拉序列,用树状数组维护即可O(nlogn ...

  8. ASP.NET快速开发框架之工作流引擎

    大家好,啊!我小六六也有自己的博客了,今天我来跟大家分享下我的撸码心得,顺便吐槽下,我的坑爹上司.作为一名程序猿,我在系统开发方面也是“浸淫”了许久了!喔,不不不,是经营! 今天我就跟大家分享一下工作 ...

  9. android短信拦截

    广播分2种,无序广播和有序广播.可以理解为散列和队列广播. 首先无序广播,不能中断,分发机制有点类似散列发送.这种广播的的发送为:context.sendBroadcast这种广播是不能中断的,请看A ...

  10. BZOJ_3175_[Tjoi2013]攻击装置_二分图匹配

    BZOJ_3175_[Tjoi2013]攻击装置_二分图匹配Description 给定一个01矩阵,其中你可以在0的位置放置攻击装置.每一个攻击装置(x,y)都可以按照“日”字攻击其周围的 8个位置 ...