解析两个 XML 标签之间的值

2024-03-17

我知道以前有人问过这个问题,但我似乎找不到合适的解决方案,所以我会说明问题:

我有一个类似于 XML 文件的字符串。它不是 XML 字符串,但有开始和结束标记。所有信息都位于一行中,例如:

<user>username</username>random data;some more random data<another tag>data</anothertag>randomdata;<mydata>myinfo</mydata>some more random data....

etc...

我试图只阅读之间的内容<mydata></mydata>。有什么办法可以解析这个吗?

谢谢,代码值得赞赏。


我只想使用 strstr():

char * get_value(const char *input)
{
  const char *start, *end;

  if((start = strstr(input, "<mydata>")) != NULL)
  {
    start += strlen("<mydata>");
    if((end = strstr(start, "</mydata>")) != NULL)
    {
      char *out = malloc(end - start + 1);
      if(out != NULL)
      {
        memcpy(out, start, (end - start));
        out[end - start] = '\0';
        return out;
      }
    }
  }
  return NULL;
}

注意,上面的内容未经测试,直接写入SO编辑框。因此,几乎可以保证它至少包含一个差一错误。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

解析两个 XML 标签之间的值 的相关文章

  • 无法将 std::min 传递给函数,std::min 的副本有效

    Passing std min函数无法编译 我复制了 libcpp 声明std min进入我的源文件并且它可以工作 std 版本有什么问题 clang 和 gcc 也会发生同样的情况 在 Godbolt 上测试 https godbolt
  • 锁定 ASP.NET 应用程序变量

    我在 ASP NET 应用程序中使用第三方 Web 服务 对第 3 方 Web 服务的调用必须同步 但 ASP NET 显然是多线程的 并且可能会发出多个页面请求 从而导致对第 3 方 Web 服务的同时调用 对 Web 服务的调用封装在自
  • C free() 是如何工作的? [复制]

    这个问题在这里已经有答案了 可能的重复 malloc 和 free 如何工作 https stackoverflow com questions 1119134 how malloc and free work include
  • XPATH 查询、HtmlAgilityPack 和提取文本

    我一直在尝试从名为 tim new 的类中提取链接 我也得到了解决方案 给出了解决方案 片段和必要的信息here https stackoverflow com questions 2982862 extracting a table ro
  • 叮当错误?命名空间模板类的朋友

    以下代码在 clang 下无法编译 但在 gcc 和 VS 下可以编译 template
  • 如果 JSON.NET 中的值为 null 或空格,则防止序列化

    我有一个对象需要以这样的方式序列化 即 null 和 空白 空或只是空格 值都不会序列化 我不控制对象本身 因此无法设置属性 但我知道所有属性都是字符串 环境NullValueHandling显然 忽略 只能让我找到解决方案的一部分 它 似
  • 如何以编程方式播放 16 位 pcm 数组 [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我有一个包含 16 位 pcm 值的短 数组 我希望能够在不添加任何标题 也不将任何文件保存到内存的情况下播放它 我知道我可能需要一个提供
  • C 中“complex”的默认类型

    根据我读过的文档 C99 和更高版本的支持float complex double complex and long double complex作为复杂类型 但是 此代码在使用时编译时不会发出警告gcc Wall Wextra inclu
  • C++ 将联合强制转换为其成员类型之一

    以下对我来说似乎完全符合逻辑 但不是有效的 C 联合不能隐式转换为其成员类型之一 有人知道为什么不这样做的充分理由吗 union u int i char c function f int i int main u v v i 6 f v
  • C# 编译器数字文字

    有谁知道 C 编译器数字文字修饰符的完整列表 默认情况下 声明 0 使其成为 Int32 声明 0 0 使其成为 Double 我可以在末尾使用文字修饰符 f 来确保某些内容被视为 Single 例如像这样 var x 0 x is Int
  • 在 C++11 中移出 stdpriority_queue 的元素

    最小的工作示例 include
  • 如何使用 Roslyn 通过扩展方法、静态类中的方法以及带有 ref/out 参数的方法来访问调用

    我正在致力于创建一个开源项目 用于创建 NET UML 序列图 该项目利用名为 js sequence diagrams 的 javascript 库 我不确定 Roslyn 是适合这项工作的工具 但我想我应该尝试一下 所以我整理了一些概念
  • 子目录中的头文件(例如 gtk/gtk.h 与 gtk-2.0/gtk/gtk.h)

    我正在尝试使用 GTK 构建一个 hello world 其中包括以下行 include
  • 如何在 C# 中获取 Json 数组?

    我有一个像这样的 Json 字符串 我想将它加载到 C 数组中 当我尝试这样做时 我收到异常 我的字符串 customerInformation customerId 123 CustomerName Age 39 Gender Male
  • C++ 到 C# 事件处理

    所以我有我的C WinForm 应用程序 我从中调用我的C CLI MFC dll图书馆 但也有一些events在我的 C 库上 甚至此事件也发生在该库的本机 非 CLI 部分 我需要从我的 C 应用程序调用一些代码 并获取一些有关此事件的
  • 如何使用 CSI.exe 脚本参数

    当你运行csi exe 安装了 Visual Studio 2015 update 2 您将得到以下语法 Microsoft R Visual C Interactive Compiler version 1 2 0 51106 Copyr
  • 使用多线程进行矩阵乘法?

    我应该使用线程将两个矩阵相乘 有两件事 当我运行程序时 我不断得到 0 我还收到消息错误 对于每个错误 它在粗体行上显示 警告 从不兼容的指针类型传递 printMatrix 的参数1 我尝试打印输出 还要注意 第一个粗体块 这是我解决问题
  • C# 中的 C/C++ 代码编译器

    在 C 中 我可以使用下面的代码编译 VB 和 C 代码 但无法编译 C C 代码 有什么办法可以做到这一点吗 C 编译器 public void Compile string ToCompile string Result null st
  • 为什么 f(i = -1, i = -1) 是未定义的行为?

    我正在读关于违反评估顺序 http en cppreference com w cpp language eval order 他们举了一个令我困惑的例子 1 如果标量对象上的副作用相对于同一标量对象上的另一个副作用是无序的 则行为未定义
  • printf或iostream如何指定点后的最大位数

    字符串采用什么格式printf or iomanip我应该使用 iostream 中的运算符以以下格式打印浮点数 125 0 gt 125 125 1 gt 125 1 125 12312 gt 125 12 1 12345 gt 1 12

随机推荐

  • 有人发布过任何 C# 4 编码标准/指南/风格指南吗?

    我了解 C 2 和 C 3 的许多编码标准和指南 但正在寻找一些针对 C 4 编写的标准和指南 我正在发布 C 4 0 的新编码指南here http csharpguidelines codeplex com releases view
  • ng-repeat 选择列表中的初始值

    请帮助 ng repeat 我使用 ng repeat 创建了一个值列表 如何指定我要首先显示的列表中间的值 我想在列表中首先显示 地球 我的代码 html li class list item poster title li 控制器 us
  • 加载器框架和活动生命周期

    我很喜欢loaders以及他们的好处 但我遇到了一个我不知道如何解决的问题 在我的活动中 我使用 AsyncTaskLoader 从数据库加载一些数据并向onLoadFinished Loader
  • 相当于 Surefire + JUnit 的 @DirtiesContext(...) 吗?

    我正在使用maven surefire plugin with junit4 1 4 我有一个单元测试 它依赖于内部使用的第三方类static 代码块来初始化一些变量 对于一项测试 我需要更改这些变量之一 但仅限于某些测试 我希望在测试之间
  • 如何将自定义对象列表绑定到 ComboBox?

    如何将自定义对象列表绑定到组合框 这就是我目前所拥有的 this classCmbo DataSource viewModel Coarses this classCmbo DisplayMember Name this classCmbo
  • 疯狂的 JavaFX 帧速率 - 有什么想法吗?

    JavaFX 具有疯狂的帧速率 我今天演示了不同的 JavaFX 动画选项 然而 在我用于演示的机器上 AnimationTimer 的行为非常奇怪 据我了解 JavaFX 的目标应该是 60FPS 左右的速率 并且在每帧之前调用动画计时器
  • 如何在 ERB 中编写像 标签这样的纯 HTML?

    我想更换 gt 但我不明白为什么这比
  • 用于 C++ 的类似codingbat的网站[关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 伙计们 我需要找到一个好的网站 比如编码蝙蝠 http codingbat com 再次学习 C 我在学校学过它 但后来我从未认真使用过它
  • 如何从 fullcalendar JS 视图中删除所有日期?

    我正在尝试构建一个在 fullcalendar 中创建事件的应用程序 我根本不允许用户在客户端创建 allDay 事件 但他们仍然可以在视图中看到它 有什么方法可以从视图中完全删除 allDays 吗 function initCalend
  • 在 TextField IText 中调整文本

    抱歉 如果存在像我这样的类似帖子 但我是这个论坛的新手 我还没有找到它 我在动态调整 TextField 大小取决于文本大小时遇到 问题 我填写现有的 PDF 填写 AcroForm 中的字段 form setField 字段 值 等 一切
  • 检查字符串是否为日期 Postgresql

    有没有什么功能PostgreSQL返回Boolean给定的字符串是否是日期 就像ISDATE 在 MSSQL 中 ISDATE January 1 2014 您可以创建一个函数 create or replace function is d
  • 在 OS X El Capitan 上使用 libssl 编译 C 程序?

    我有一个使用 libssl 的简单 C 程序 在 Linux 上 我安装了 openssl dev 包并使用以下行编译了程序 gcc test libssl c o test libssl lcrypto lssl 现在我想在我的 Mac
  • 如何将数组的元素作为单独的参数传递给函数?

    我有一个像这样的函数 但有更多参数 function do something n1 n2 n3 return n1 n2 n3 然后我有一个包含 3 个项目的数组 它们是该函数的参数 my array 10 123 14 例如 do so
  • SQL Server JDBC 异常

    当使用 ANT 构建我的 Java 应用程序时 我不断收到此错误 我已多次尝试使用 SQLJDBC JAR 和 SQLJDBC4 JAR 但不断收到此错误消息 我完全困惑为什么即使升级到 sqljdbc4 jar 后也会收到此错误 java
  • Nginx 未运行且没有错误消息

    我正在尝试启动我的 nginx 服务器 当我输入 gt etc init d nginx start 时 出现一条消息 正在启动 nginx 然后什么也没有发生 没有错误消息 当我检查 nginx 的状态时 我发现它没有运行 这是我的 et
  • 程序在 execvp( command.argv[0], command.argv) 之后停止

    我正在编写一个小型 shell 程序 它接受命令并执行它 如果用户输入无效命令 if 语句将返回 1 如果命令正确 则执行该命令 但是一旦执行该命令 程序就会结束 我做错了什么 不执行后面的代码行 我已经使用 ls 和 cat 命令测试了
  • 使用公式内现有单元格的值

    我正在使用 Excel 2010 中的 相机 功能 我的目标是有一个单元格 其中有一个我可以手动输入的日期 并且在其下方 公式将获得更新的值 该值代表另一个 Excel 文件中的工作表名称 并向我显示更新的屏幕截图 例如 细胞A1 has
  • 如何隐藏 VS Code 中的状态栏?

    如何隐藏 Visual Studio Code 中的状态栏 应该可以隐藏状态栏 有什么办法可以隐藏它吗 在 查看 菜单中 我找不到隐藏它的选项 View gt Appearance gt Show Status Bar Screenshot
  • subprocess.wait() 不等待 Popen 进程完成(使用线程时)?

    我在使用时遇到一些问题subprocess Popen 使用线程从我的 python 脚本生成同一应用程序的多个实例 使它们同时运行 在每个线程中 我使用以下命令运行应用程序popen 调用 然后我通过调用等待它完成wait 问题似乎在于w
  • 解析两个 XML 标签之间的值

    我知道以前有人问过这个问题 但我似乎找不到合适的解决方案 所以我会说明问题 我有一个类似于 XML 文件的字符串 它不是 XML 字符串 但有开始和结束标记 所有信息都位于一行中 例如