Summary of Arduino String Character Functions Code
This article explains how to use the String functions charAt() and setCharAt() in Arduino programming to access or modify characters at specific positions within a String. It includes examples such as replacing a colon with an equals sign and checking if a specific character matches a condition. The article cautions about avoiding out-of-bounds errors by ensuring the index is within the String's length. No physical circuit is necessary other than connecting the Arduino board to a computer via USB for uploading and serial monitoring.
Parts used in the String Character Functions Project:
- Arduino Board
- USB cable (for connection to computer)
The String functions charAt()
and setCharAt()
are used to get or set the value of a character at a given position in a String.
At their simplest, these functions help you search and replace a given character. For example, the following replaces the colon in a given String with an equals sign:
int colonPosition = reportString.indexOf(‘:’);
reportString.setCharAt(colonPosition, ‘=’);
Here’s an example that checks to see if the first letter of the second word is ‘B’:
int spacePosition = reportString.indexOf(‘ ‘);
if (reportString.charAt(spacePosition + 1) == ‘B’) {
Serial.println(“You might have found the Benjamins.”)
}
Caution: If you try to get the charAt
or try to setCharAt()
a value that’s longer than the String’s length, you’ll get unexpected results. If you’re not sure, check to see that the position you want to set or get is less than the string’s length using the length()
function.
Circuit
There is no circuit for this example, though your Arduino must be connected to your computer via USB.
image developed using Fritzing. For more circuit examples, see the Fritzing project page
Code
/* String charAt() and setCharAt() Examples of how to get and set characters of a String created 27 July 2010 modified 2 Apr 2012 by Tom Igoe http://arduino.cc/en/Tutorial/StringCharacters This example code is in the public domain. */
Hardware Required:
- Arduino Board
For more detail: Arduino String Character Functions Code