Arduino/Arduino Common

문자열 분리하기

doublerabbits 2022. 7. 31. 18:38

 

const char DelimeterChar = ',';
const char TerminatorChar = '\n';

String readString;
String firstString;
String secondString;
String thirdString;
int firstDelimeter = 0;
int secondDelimeter = 0;

void setup() 
{ 
    Serial.begin(9600);
} 

void loop() 
{
    if (Serial.available() > 0)
    {
        readString = Serial.readStringUntil(TerminatorChar);
    }
    else
    {
        delay(1);
        return;
    }

    Serial.print("Read String : ");
    Serial.println(readString);
    firstDelimeter = readString.indexOf(DelimeterChar);
    secondDelimeter = readString.indexOf(",", firstDelimeter + 1);

    firstString = readString.substring(0, firstDelimeter);
    secondString = readString.substring(firstDelimeter + 1, secondDelimeter);
    thirdString = readString.substring(secondDelimeter + 1, readString.length());
    
    Serial.print("First : ");Serial.println(firstString);
    Serial.print("Second : ");Serial.println(secondString);
    Serial.print("Third : ");Serial.println(thirdString);
    
    delay(1); 
}

 

 

 

 

Read String : 111,222,333
First : 111
Second : 222
Third : 333