string遍历空行,行行都是?

2026-04-01 20:271阅读0评论SEO问题
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计279个文字,预计阅读时间需要2分钟。

string遍历空行,行行都是?

给定一个包含空行的多行字符串,如何使用Lua遍历字符串中的每一行,包括空行?

lualocal s=foobarblankjimfor line in magiclines(s) do print(line== and (blank) or line)end-- 输出结果: foo-- bar-- (blank)-- jim

这段代码使用了`magiclines`函数来遍历字符串中的每一行,包括空行。在`for`循环中,当行内容为空时,打印`(blank)`,否则打印行内容。

给定一个带有一些空行的多行字符串,如何迭代Lua中的行,包括空行?

local s = "foo\nbar\n\njim" for line in magiclines(s) do print( line=="" and "(blank)" or line) end --> foo --> bar --> (blank) --> jim

此代码不包含空行:

for line in string.gmatch(s,'[^\r\n]+') do print(line) end --> foo --> bar --> jim

此代码包含额外的虚假空白行:

for line in string.gmatch(s,"[^\r\n]*") do print( line=="" and "(blank)" or line) end --> foo --> (blank) --> bar --> (blank) --> (blank) --> jim --> (blank) 试试这个:

function magiclines(s) if s:sub(-1)~="\n" then s=s.."\n" end return s:gmatch("(.-)\n") end

string遍历空行,行行都是?
标签:给定

本文共计279个文字,预计阅读时间需要2分钟。

string遍历空行,行行都是?

给定一个包含空行的多行字符串,如何使用Lua遍历字符串中的每一行,包括空行?

lualocal s=foobarblankjimfor line in magiclines(s) do print(line== and (blank) or line)end-- 输出结果: foo-- bar-- (blank)-- jim

这段代码使用了`magiclines`函数来遍历字符串中的每一行,包括空行。在`for`循环中,当行内容为空时,打印`(blank)`,否则打印行内容。

给定一个带有一些空行的多行字符串,如何迭代Lua中的行,包括空行?

local s = "foo\nbar\n\njim" for line in magiclines(s) do print( line=="" and "(blank)" or line) end --> foo --> bar --> (blank) --> jim

此代码不包含空行:

for line in string.gmatch(s,'[^\r\n]+') do print(line) end --> foo --> bar --> jim

此代码包含额外的虚假空白行:

for line in string.gmatch(s,"[^\r\n]*") do print( line=="" and "(blank)" or line) end --> foo --> (blank) --> bar --> (blank) --> (blank) --> jim --> (blank) 试试这个:

function magiclines(s) if s:sub(-1)~="\n" then s=s.."\n" end return s:gmatch("(.-)\n") end

string遍历空行,行行都是?
标签:给定