Julia 朱莉娅的弦乐

Julia 朱莉娅的弦乐,julia,Julia,我正在与Julia一起玩,并尝试运行以下函数。有人能告诉我为什么我看不到终端的最后一个字“编程”吗。谢谢 function prnt(st) emptyArr = [] emptySt = "" id = 1 for char in st if (char != ' ' && char != '\n' && char != '\r') emptySt = emptySt * char

我正在与Julia一起玩,并尝试运行以下函数。有人能告诉我为什么我看不到终端的最后一个字“编程”吗。谢谢

function prnt(st)
    emptyArr = []
    emptySt = ""
    id = 1

    for char in st
        if (char != ' ' && char != '\n' && char != '\r')
            emptySt = emptySt * char
        else
            print(emptySt)
            emptySt = ""
        end
    end
end

prnt("this is programming")

我只是添加了一点调试println来查看发生了什么:

function prnt(st)
       emptyArr = []
           emptySt = ""
       id = 1

       for char in st
        println(char) #debug statement
           if (char != ' ' && char != '\n' && char != '\r')
               emptySt = emptySt * char
           else
               print(emptySt)
               emptySt = ""
           end
       end
   end
结果是:

julia> prnt("this is programming")

t
h
i
s

thisi
s

isp
r
o
g
r
a
m
m
i
n
g
在循环末尾添加一个
print(emptySt)
,效果很好:

function prnt(st)
       emptyArr = []
           emptySt = ""
       id = 1

       for char in st
           if (char != ' ' && char != '\n' && char != '\r')
               emptySt = emptySt * char
           else
               print(emptySt)
               emptySt = ""
           end
       end
print(emptySt) #extra print here
   end
这就是结果:

julia> prnt("this is programming")
thisisprogramming
julia> prnt("this is programming")
thisisprogramming
更简单的方法是使用
replace
功能:

function prnt2(st)
    println(replace(st,r" |\n|\r"=>"")) #using a regular expression (r"")
end
结果是:

julia> prnt("this is programming")
thisisprogramming
julia> prnt("this is programming")
thisisprogramming