尝试从 C 中的字符串中删除所有数字

2023-12-02

我试图从字符串(char*)中取出所有数字......

这是我现在所拥有的:

    // Take numbers out of username if they exist - don't care about these
    char * newStr;
    strtoul(user, &newStr, 10);
    user = newStr;

我的理解是 strtoul 应该将字符串转换为无符号长整型。非数字的字符被放入传入的指针(第二个参数)中。当我将用户重新分配给 newStr 并打印它时,字符串保持不变。为什么是这样?有谁知道更好的方法?

从文档示例:

#include <stdio.h>
#include <stdlib.h>

int main()
{
char str[30] = "2030300 This is test";
char *ptr;
long ret;

ret = strtoul(str, &ptr, 10);
printf("The number(unsigned long integer) is %lu\n", ret);
printf("String part is |%s|", ptr);

return(0);
}

让我们编译并运行上面的程序,这将产生以下结果:

The number(unsigned long integer) is 2030300
String part is | This is test|

char* RemoveDigits(char* input)
{
    char* dest = input;
    char* src = input;

    while(*src)
    {
        if (isdigit(*src)) { src++; continue; }
        *dest++ = *src++;
    }
    *dest = '\0';
    return input;
}

Test:

int main(void)
{
    char inText[] = "123 Mickey 456";
    printf("The result is %s\n", RemoveDigits(inText));
    // Expected Output: " Mickey "
}

数字已被删除。

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

尝试从 C 中的字符串中删除所有数字 的相关文章

随机推荐

  • JavaScript 将字符串中的所有 / 替换为 \?

    我有一个 javascript 文件 它使用 cscript 通过 Windows 作业运行 但是 我似乎无法修复这个问题以使其正常工作 在文件内部 它基本上采用 URL 并将其转换为 UNC 路径 ex http mysite com d
  • 从 C# 中的 csv 文件读取特定列

    我有一个简单的 3 列 csv 文件 我只需要从第一列中提取信息 我正在考虑正则表达式 但我希望有一种更简单更有效的方法 任何帮助都感激不尽 Thanks 尝试使用这个快速 CSV 阅读器
  • 如果在文本文件列表中找不到文件,批处理文件是否可以删除文件?

    尝试编写一个批处理文件 该文件将循环遍历目录中的所有文件 如果在文本文件中找不到文件的第一部分 则删除 在图像目录中 文件的命名如下 1 a jpg 1 b jpg 1 c jpg 2 a jpg 3 a jpg 3 b jpg 在文件中的
  • 链接文本框控件的必填字段和正则表达式验证器时出现问题

    我正在尝试使用 ASP net 实现表单验证 并且我已尝试了建议的所有解决方案here但最好的一个是aspsnippets com so far 我的代码如下
  • SELECT DISTINCT 不工作 Android SQLite

    注意问题已更新为我迄今为止所解决的问题 我正在编写一个应用程序 其位置记录如下 id primary state region area latitude longitude 我可以获取屏幕上的所有数据 但我只想列出州 并且仅列出州而不是任
  • 无法使用 fwrite 将 int 写入文件

    我正在尝试格式化我的键盘日志输出 以便它显示时间 t time 0 now localtime t if now gt tm min prevM now gt tm hour prevH prevM now gt tm min prevH
  • 基于用户选项的 PHP 动态 SQL SELECT 语句

    首先 我想提一下 我一直在疯狂地尝试和搜索以找到解决方案 但到目前为止还没有运气 我的问题如下 我有一个包含数十行的 MySQL 数据库 我创建了一个 jQuery 网格来显示数据 该页面已经可以使用了 根据要求 我正在整理一个页面 人们可
  • IIS 7.5 URL重写规则基于用户代理处理请求

    我编写了一条基于用户代理重定向请求的规则 该规则设置为将默认请求 非移动 重定向到Domain1以及从移动设备到移动域的请求 Domain2 即使在应用移动重定向后 来自移动设备的所有请求都会被带到Domain1 请参阅下面的重定向规则 谁
  • 扩展基础移动 Azure 示例(.net 后端)

    因此 我创建了一个天蓝色移动服务 下载了一个项目并运行它 第一次启动后 我在数据库中看到一些新表 TodoItems 有 2 项 和 MigrationHistory 到目前为止 一切都很好 现在 我想添加一张额外的桌子 我正在制作新模型M
  • XSLT 1.0 比较日期

    我想将当前日期与开始日期和结束日期进行比较 XML is
  • ggplot2:组合绘图时修复轴高度/宽度[重复]

    这个问题在这里已经有答案了 library ggplot2 library gridExtra df1 lt data frame x c A1 A2 A3 A4 something c 10 18 24 32 df2 lt data fr
  • Google App 脚本返回多行数组

    Summary 我是 Google Apps 脚本的新手 但我花了相当多的时间进行研究 但一无所获 基本上我正在尝试复制 SQL 的交叉连接功能 我有 2 个表 一个包含 12 个月的日历表 一个包含 3 个客户的客户表 客户表由 Goog
  • Hive 查询中的时间连接(时间上非常接近的事件)

    我需要一个我很难弄清楚的配置单元查询 我有一个时间序列 如下所示 time source word1 word2 etc 2012 02 01 23 43 16 9988243 0001 2B3B FAF0 2012 02 01 23 43
  • 将三个用例合并为一个用例

    我有一个演员 管理员 他可以对其他用户帐户执行一些操作 例如创建帐户 编辑帐户和删除帐户帐户 我应该做这样的事情 gt UseCase createAccount o gt UseCase DeleteAccount Admin gt Us
  • 对“qInitResources_systray()”的未定义引用

    我用qt官方示例并得到错误 media roroco disk750 Downloads qtbase examples widgets desktop systray main cpp 50 undefined reference to
  • 自动填充用户名和密码 UIWebView Swift

    我发现了很多在 Objective C 中自动填充用户名和密码的方法 但我不知道如何让它与 Swift 一起工作 这段代码的 Swift 等价物是什么 这是否适合我想要完成的任务 谢谢 void webViewDidFinishLoad U
  • 如何判断某个蓝牙设备是否已连接?

    我想使用 applescript 进行定期 每秒 检查以查看是否连接了特定的蓝牙设备 如果是 则弹出快速通知 为了框架它 我想要一个弹出窗口 当我的 Airpods 连接时 因为有时当我把它们拉出来时 它会连接到我的电脑 有时会连接到我的
  • XCode 无法识别环境变量

    我使用以下脚本在 OSX Yosemite 10 10 5 上运行 XCode 7 0 1 7A1001 export FOO bar this should not be necessary but just in case launch
  • 如何配置 Oracle tnsnames 文件位置? [关闭]

    Closed 这个问题是无关 目前不接受答案 我在 Windows 上安装了 Oracle 10g 目前 我的 tnsnames 文件存储在 ORACLEHOME network admin 中 但是 我想将 Oracle 配置为在其他位置
  • 尝试从 C 中的字符串中删除所有数字

    我试图从字符串 char 中取出所有数字 这是我现在所拥有的 Take numbers out of username if they exist don t care about these char newStr strtoul use