4.4 arduino 字符串

字符串类主要的就是一些字符串处理函数,比字符串具有更多更轻大的功能,所以用起来很爽!

下面是其主要功能介绍,用例主要参考官方资料。

1、定义,这个不用多说了

123456789String stringOne = "Hello String";String stringOne =  String('a');String stringTwo =  String("This is a string");String stringOne =  String(stringTwo + " with more");String stringOne =  String(13);String stringOne =  String(analogRead(0), DEC);String stringOne =  String(45, HEX);String stringOne =  String(255, BIN);String stringOne =  String(millis(), DEC);

2、字符串的连接与附加,官方将两种功能分开了,实际上可以和对比理解会更好一点

12345678stringThree =  stringOne + 123;stringThree = stringOne + 123456789;stringThree =  stringOne + 'A';stringThree =  stringOne +  "abc";stringThree = stringOne + stringTwo;stringOne += 123456789;//等同于stringTwo.concat(123456789);

3、在字符串中中显示字符位置,位置返回给定字符的第一个,查找失败返回-1
indexOf(‘?’):从字符串开始开始查找
lastindexOf(‘?’):开始查找

1234567int firstClosingBracket = stringOne.indexOf('>');//默认是从头部开始查找,还可以指定开始位置int secondOpeningBracket = firstClosingBracket + 1;int secondClosingBracket = stringOne.indexOf('>', secondOpeningBracket );lastindexOf()的用法类似int lastParagraph = stringOne.lastIndexOf("<p");int secondLastGraf = stringOne.lastIndexOf("<p", lastParagraph - 1);

4、length():字符串长度测量函数,返回字符串的长度

12String txtMsg = "This is a test!";int lastStringLength = txtMsg.length();

5、trim():将字符串中的去除,包括空格、回车、Tab等

123String str = "this is   atest ,do you kown?";stringOne.trim();

6、大小写转换
大转小:toLowerCase()
小转大:toUpperCase()

7、替换:用一个的字符串替换前面的字符串

12String stringOne = "<html><head><body>";stringTwo.replace("<", "</");

8、查看字符串指定位置的字符:charAt(),返回给定位置的字符,如果超出范围会发生异常。
改变字符串给定位置的字符:setcharAt,返回值。

123String reportString = "SensorReading: 456";char mostSignificantDigit = reportString.charAt(15);reportString.setCharAt(13, '=');

9、判断字符串开头、结尾或者给定位置是否为给定字符串,是返回真,否则返回假

1234567String stringOne = "HTTP/1.1 200 OK";if (stringOne.startsWith("HTTP/1.1")) {Serial.println("Server's using http version 1.1");}if (stringOne.startsWith("200 OK", 9)) {Serial.println("Got an OK from the server");}

10、字符串的各种比较,包括==,!=,>,<,>=,<=。具体的函数有equals()、equalsIgnoreCase()(忽略大小写)、compareTo。从去后进行比较,以ASIIC码为标准。

11、字符串转换为整型:toInt(),返回值为转换后的整型值。

12、字符串解析函数:substring(?,…),返回值为指定位置的字符串值

1234567String stringOne = "Content-Type: text/html";if (stringOne.substring(19) == "html") {Serial.println("It's an html file");}if (stringOne.substring(14,18) == "text") {Serial.println("It's a text-based file");
联系我们

联系我们

微信:13823392571

在线咨询:点击这里给我发消息

工作时间:周一至周五,9:30-18:30,节假日休息

微信客服
微信客服
分享本页
返回顶部