You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Zig语言中按指定字符分割字符串并处理每个单词?

Zig语言的字符串分割实现

Zig标准库提供了字符串分割相关工具,但和Python默认split()的行为存在差异,以下是具体用法:

1. 严格按指定分隔符分割:std.strings.split

这个函数需要明确指定分隔符,会严格按照该分隔符切割字符串,遇到连续分隔符时会生成空字符串结果。示例代码:

const std = @import("std");
const print = std.debug.print;

pub fn main() void {
    const str = "Hello world";
    var iter = std.strings.split(u8, str, " ");
    while (iter.next()) |word| {
        print("{s}\n", .{word});
    }
}

2. 类似Python默认split()的空白分割:std.strings.tokenize

如果需要按任意空白字符(空格、制表符、换行等)分割,且自动忽略连续空白,使用tokenize更合适——它不会生成空分割结果,行为和Python默认的split()完全一致。示例代码:

const std = @import("std");
const print = std.debug.print;

pub fn main() void {
    const str = "Hello   world\tfoo\nbar";
    var iter = std.strings.tokenize(u8, str, " \t\n");
    while (iter.next()) |word| {
        print("{s}\n", .{word});
    }
}

内容的提问来源于stack exchange,提问作者Stanislav Nikolov

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.19 08:10:01