我刚刚开始学习 C++。测试字符串是否以数字开头的选项有哪些?我的函数 is_page_number
在以下程序中发挥了作用(我认为)。这是一个坏主意吗?我如何在这里使用正则表达式?如果代码的任何部分写得不好,任何评论都将不胜感激。
#include <string>
#include <iostream>
#include <fstream>
using std::string;
using std::cout;
using std::ifstream;
using std::endl;
bool is_page_number(const string& aline) {
return aline[0] == '1' | aline[0] == '2' | aline[0] == '3' | aline[0] == '4' | aline[0] == '5' | aline[0] == '6' | aline[0] == '7' | aline[0] == '8' | aline[0] == '9';
}
int main() {
const string temp_filename("test_input.txt");
ifstream input(temp_filename.c_str());
string one_line;
while (getline(input,one_line)) {
if(is_page_number(one_line)) {
cout << "page number: ";
}
cout << one_line << endl;
}
}
最佳答案
#include <cctype>
return isdigit(aline[0]);
关于c++ - 测试字符串是否以数字开头,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8949267/