从列表中删除字符串的特定格式?

10074405

我正在写一个Arduino一个程序,它在信息一类的NMEA格式从存储在一个List <String>的.txt文件读取。我需要删除以某些前缀($ GPZDA,$ GPGSA,$ GPGSV)开头的字符串,因为它们对我来说是无用的,因此,我只需要$ GPRMC和$ GPGGA即可,其中包含一个基本的时间戳记,而且位置全在我身上无论如何都在使用。我希望使用尽可能少的外部库(SPRINT,BOOST),因为DUE并没有那么多的空间。

我真正需要的是一种从LIST < STRING >中删除不是以特定前缀开头的行的方法,有什么想法吗?

我当前使用的方法似乎已用一个特定的字符串替换了整个输出,但文件的长度/大小保持不变(分别为1676和2270),这些输出是使用两个While语句实现的,该语句将两个输入文件放入列表< STRING >

以下是我要使用的内容的一个小片段,该内容应按正确的顺序对文件进行排序(工作中,它们按其数值当前排列,这在当前是第二个字段中有效)字符串),但是“ .unique();” 似乎已经采用了每个“唯一”值,并用它替换了所有其他值,所以现在我有了一个1676行列表,该行列表基本上变为1,1,1,2,2,2,3,3,4 ... 1676? ?

    while (std::getline(GPS1,STRLINE1)){
        ListOne.push_back("GPS1: " + STRLINE1 + "\n");
        ListOne.sort();
        ListOne.unique();
        std::cout << ListOne.back() << std::endl;
        GPSO1 << ListOne.back();
    }

谢谢

西斯

如果我理解正确,并且您想要某种前缀白名单。您可以使用remove_if来寻找他们,并使用一个小功能,以检查是否前缀拟合的一个(使用mismatch这里),例如:

#include <iostream>
#include <algorithm>
#include <string>
#include <list>
using namespace std;

int main() {
    list<string> l = {"aab", "aac", "abb", "123", "aaw", "wws"};
    list<string> whiteList = {"aa", "ab"};
    auto end = remove_if(l.begin(), l.end(), [&whiteList](string item)
        {
            for(auto &s : whiteList)
            {
                auto res = mismatch(s.begin(), s.end(), item.begin());
                if (res.first == s.end()){
                    return false; //found allowed prefix
                }
            }
            return true; 
        });
    for (auto it = l.begin(); it != end; ++it){
        cout<< *it << endl;
    }
    return 0;
}

演示

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何使用RegEx从字符串中删除特定格式?

来自分类Dev

javascript正则表达式从字符串中删除特定格式的文本

来自分类Dev

javascript正则表达式从字符串中删除特定格式的文本

来自分类Dev

解析特定格式的字符串

来自分类Dev

如何从字符串中获取特定格式的所有子字符串

来自分类Dev

如何在iOS中从特定格式的字符串中分离子字符串

来自分类Dev

检测特定格式的子字符串

来自分类Dev

将字符串转换为特定格式的日期

来自分类Dev

将Javascript字符串转换为特定格式

来自分类Dev

验证特定格式,而不使用“-”分割字符串

来自分类Dev

将字符串转换为特定格式的日期

来自分类Dev

Python / Regex拆分特定格式的返回字符串

来自分类Dev

更新字符串以遵循特定格式

来自分类Dev

解析特定格式的日期/时间字符串

来自分类Dev

如何匹配特定格式的字符串?

来自分类Dev

检测特定格式的子字符串

来自分类Dev

将字符串日期解析为特定格式

来自分类Dev

检查字符串是否与特定格式匹配

来自分类Dev

使用Postgres,我想要查询字符串中特定格式的时间戳

来自分类Dev

如何在Android中获取特定格式的字符串

来自分类Dev

解析字符串以在Clojure中以特定格式获取日期和时间

来自分类Dev

如何使用正则表达式解析Javascript中特定格式的字符串?

来自分类Dev

使用python以特定格式打印字符串中的数字

来自分类Dev

Python中特定格式的字符串正则表达式

来自分类Dev

如何在Android中获取特定格式的字符串

来自分类Dev

解析字符串以在Clojure中以特定格式获取日期和时间

来自分类Dev

将 R 中的字符串数据处理为特定格式

来自分类Dev

如何在C中检查字符串的特定格式

来自分类Dev

使用R从字符串中提取特定格式的子字符串(ID,代码)

Related 相关文章

  1. 1

    如何使用RegEx从字符串中删除特定格式?

  2. 2

    javascript正则表达式从字符串中删除特定格式的文本

  3. 3

    javascript正则表达式从字符串中删除特定格式的文本

  4. 4

    解析特定格式的字符串

  5. 5

    如何从字符串中获取特定格式的所有子字符串

  6. 6

    如何在iOS中从特定格式的字符串中分离子字符串

  7. 7

    检测特定格式的子字符串

  8. 8

    将字符串转换为特定格式的日期

  9. 9

    将Javascript字符串转换为特定格式

  10. 10

    验证特定格式,而不使用“-”分割字符串

  11. 11

    将字符串转换为特定格式的日期

  12. 12

    Python / Regex拆分特定格式的返回字符串

  13. 13

    更新字符串以遵循特定格式

  14. 14

    解析特定格式的日期/时间字符串

  15. 15

    如何匹配特定格式的字符串?

  16. 16

    检测特定格式的子字符串

  17. 17

    将字符串日期解析为特定格式

  18. 18

    检查字符串是否与特定格式匹配

  19. 19

    使用Postgres,我想要查询字符串中特定格式的时间戳

  20. 20

    如何在Android中获取特定格式的字符串

  21. 21

    解析字符串以在Clojure中以特定格式获取日期和时间

  22. 22

    如何使用正则表达式解析Javascript中特定格式的字符串?

  23. 23

    使用python以特定格式打印字符串中的数字

  24. 24

    Python中特定格式的字符串正则表达式

  25. 25

    如何在Android中获取特定格式的字符串

  26. 26

    解析字符串以在Clojure中以特定格式获取日期和时间

  27. 27

    将 R 中的字符串数据处理为特定格式

  28. 28

    如何在C中检查字符串的特定格式

  29. 29

    使用R从字符串中提取特定格式的子字符串(ID,代码)

热门标签

归档