21xrx.com
2024-11-25 06:08:26 Monday
登录
文章检索 我的文章 写文章
C++如何判断字符串?
2023-07-09 03:57:37 深夜i     --     --
C++ 判断 字符串

在C++语言中,判断字符串是一个常见的需求。在某些场景下需要对字符串做出不同的处理,例如根据字符串的长度、字符的种类、特定字符的出现次数等条件进行判断。那么,如何在C++中判断字符串呢?

一. 判断字符串相等

判断两个字符串是否相等,可以使用==运算符,如下所示:


string str1 = "hello";

string str2 = "world";

if (str1 == str2)

  cout << "str1 equals str2" << endl;

else

  cout << "str1 does not equal str2" << endl;

二. 判断字符串的长度

可以使用size()或length()函数获取字符串的长度,然后根据长度做出不同的处理,如下所示:


string str = "hello";

if (str.size() > 5)

  cout << "The length of str is greater than 5" << endl;

else

  cout << "The length of str is less than or equal to 5" << endl;

三. 判断字符串是否为空

可以使用empty()函数判断一个字符串是否为空,如下所示:


string str = "";

if (str.empty())

  cout << "str is empty" << endl;

else

  cout << "str is not empty" << endl;

四. 判断字符串中是否包含某个字符

可以使用find()函数查找字符串中是否包含某个字符,如果包含则返回该字符的位置,如果不包含则返回string::npos,如下所示:


string str = "hello";

char ch = 'e';

if (str.find(ch) != string::npos)

  cout << "str contains the character 'e'" << endl;

else

  cout << "str does not contain the character 'e'" << endl;

五. 判断字符串中某个字符的出现次数

可以使用count()函数统计字符串中某个字符的出现次数,如下所示:


string str = "hello";

char ch = 'l';

int count = 0;

for (int i = 0; i < str.size(); ++i) {

  if (str[i] == ch)

    count++;

}

cout << "'" << ch << "' appears in str " << count << " times" << endl;

六. 判断字符串是否以某个子串开头或结尾

可以使用substr()函数获取子串,然后判断子串是否与原字符串的开头或结尾匹配,如下所示:


string str = "hello";

string subStr = "he";

if (str.substr(0, subStr.size()) == subStr)

  cout << "str starts with the substring 'he'" << endl;

else

  cout << "str does not start with the substring 'he'" << endl;

if (str.substr(str.size() - subStr.size(), subStr.size()) == subStr)

  cout << "str ends with the substring 'he'" << endl;

else

  cout << "str does not end with the substring 'he'" << endl;

以上是C++中常见的字符串判断方法,程序员可以根据实际需求选择合适的方法判断字符串。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复