APL/APLX - 拆分字符串
APL/APLX - Splitting a string
我有一个字符串(阅读一段文本的结果),我想将其拆分为一个单词数组。我会在每个 space 上拆分字符串。这看起来应该很简单,但我似乎无法找到实现这一目标的方法。
值得注意的是,我使用的是 APLX,因此我可以选择导入 Ruby 函数,但我更愿意坚持使用 APL。
有很多不同的方法可以解决这个问题。我最常在 Dyalog APL:
中使用以下 dfn
penclose←{⎕ML←3 ⋄ ⍺←↑,⍵ ⋄ (~⍵∊⍺)⊂,⍵ } ⍝ separator as ⍺ or ⍵[1]
我不确定 APLX 是否有 dfns,所以更 "traditional" 的风格是:
∇ R←penclose R;a
⍝ Partitioned enclose of text vector with separator in R[1]
⍝ ⎕ML←3 ⍝ Dyalog-specific to make ⊂ APL2-compatible...
a←1↑R ⋄ R←(~R∊a)⊂R
∇
我有一个字符串(阅读一段文本的结果),我想将其拆分为一个单词数组。我会在每个 space 上拆分字符串。这看起来应该很简单,但我似乎无法找到实现这一目标的方法。
值得注意的是,我使用的是 APLX,因此我可以选择导入 Ruby 函数,但我更愿意坚持使用 APL。
有很多不同的方法可以解决这个问题。我最常在 Dyalog APL:
中使用以下 dfnpenclose←{⎕ML←3 ⋄ ⍺←↑,⍵ ⋄ (~⍵∊⍺)⊂,⍵ } ⍝ separator as ⍺ or ⍵[1]
我不确定 APLX 是否有 dfns,所以更 "traditional" 的风格是:
∇ R←penclose R;a
⍝ Partitioned enclose of text vector with separator in R[1]
⍝ ⎕ML←3 ⍝ Dyalog-specific to make ⊂ APL2-compatible...
a←1↑R ⋄ R←(~R∊a)⊂R
∇