提取c++输出中某个单词前面的值
Extract value preceeded by a certain word in c++ output
如果您有一个具有已知结构的文本的文件,您将如何提取某个识别词前面的值?具体来说,如何从下面的文本中提取值。
CDM-nucleon micrOMEGAs amplitudes:
proton: SI -3.443E-10
以下是我对脚本的理解:
#include <string>
#include <fstream>
#include <iostream>
using namespace std;
int main()
{
string identifier;
double value;
ifstream file("output.txt");
// Commands to extract value
file.close();
return 0;
}
非常感谢。
这取决于输出文件的复杂性和大小。我所说的"复杂性"是指,比如说,找到你的识别词的可能性,而不是后面跟着你想要解析的数字和各种关键词。对于大文件来说,将其加载到内存中可能是不合理的,因此可能会出现流式传输。
在您的特定情况下,您可能需要了解以下内容:
http://www.cplusplus.com/reference/regex/
或者适用于流式数据的解析器之一:
http://en.wikipedia.org/wiki/Flex_lexical_analyser
您还可以研究其他语言,例如perl来解析它。
相关文章:
- 文本文件中的单词链表
- 在指针的帮助下,文本文件中单词的频率
- 如何根据单词在文本中出现的概率输出单词
- 从字符串变量中逐字符读取单词
- 使用std::mt19937从字符串中返回一个随机单词
- 如何在C++向量中奇数元素前面加上值-1,我在使用insert函数时遇到了问题
- 如何用for循环在c++中生成单词三角形
- 将数字转换为单词
- 使用if-else将数字转换为单词
- 移除前面有空格的前2个字符串
- C++-字符串是否包含一个带有简单循环的单词
- 使用单词"not"作为C ++类的名称会导致VS2019错误
- 为什么这个程序返回最后一个单词而不是最长的单词?
- 来自 DLL 的函数调用 [表观调用的括号前面的表达式必须具有(指向-)函数类型]
- 3-3. 编写一个程序来计算每个不同单词在其输入中出现的次数
- 如何将一个窗口保留在另一个应用程序窗口的前面
- 如何重写全局方法名称以在调用原始方法之前将我的代码推到前面
- C++为一串单词添加空格
- 将 C++ 类属性与分号前面的最后一个单词对齐;在 emacs 中
- 在文本文件内预先存在的字符串前面添加一个单词