まず、stringに入れた文字列をindexで検索するには、at関数を使います。
stringをindexで検索する方法
string str = "abcde";
// c = c
char c = str.at(2);
大文字か小文字かを判定する方法
文字が大文字か小文字かを判定するには、単純に範囲指定を使うことで判別することができます。
文字が小文字か判定するプログラム
char c = 'b'
if(c >= 'a' && c <= 'z'){
// 小文字判定
}
また、c++には、小文字を判定するislower関数があります。
#include <ctype.h>
if(islower(c)){
// 小文字だった場合の処理
}
文字が大文字か判定するプログラム
char c = "C";
if(c >= 'A' && c <= 'Z'){
// 大文字判定
}
同じく大文字か判定するisupper関数があります。
#include <ctype.h>
char c = 'c';
if(isupper(c)){
}
これらを組み合わせて、stringの一部の文字が大文字か小文字か判定する例を書きます。
string str = "abcde";
for(int i = 0;i < str.length();++i){
char c = str.at(i);
if(c >= 'a' && c <= 'z'){
// 小文字
}else if(c >= 'A' && c <= 'Z'){
// 大文字
}
}