【问题标题】:Is there a symbol to concatenate strings into one character scalar in APL?在 APL 中是否有将字符串连接成一个字符标量的符号?
【发布时间】:2020-01-13 07:40:04
【问题描述】:

我是 APL 新手,我知道 , (catenate) 函数将连接字符向量, 并因此分配I 如下:

      I←'hello','world' 

将导致I 等于

hello world

并且每个单词都可以独立索引。我想将这个由两部分组成的字符向量转换为一个简单的字符串,即“hello world”(我相信标量是正确的术语),这样我就可以将整个字符串存储到矩阵的一个元素中。

A 为矩阵:

      A[1;1]←I

目前,上面的行给出了域错误,因为尝试将向量分配给标量不起作用。我该如何调和呢?

【问题讨论】:

  • 'hello','world' 给出一个没有空格的 10 元素向量 'helloworld'
  • 您可能对 this 小书签感兴趣,它允许您在 Stack Exchange 等网站上输入 APL 字符,例如
  • 谢谢 - 我不知道从哪里获得符号,所以感谢您为我做出这些更改。
  • 好澄清,Bubbler。

标签: apl


【解决方案1】:

使用enclose function,它完全符合您的要求,将任何数组打包为标量:

      A←2 3⍴⍳6
      A
1 2 3
4 5 6
      A[1;1]←⊂'hello world'
      A
┌───────────┬─┬─┐
│hello world│2│3│
├───────────┼─┼─┤
│4          │5│6│
└───────────┴─┴─┘

Try it!

【讨论】:

    猜你喜欢
    • 2013-05-15
    • 2012-02-02
    • 1970-01-01
    • 2014-03-15
    • 1970-01-01
    • 2022-12-17
    • 1970-01-01
    • 1970-01-01
    • 2015-04-14
    相关资源
    最近更新 更多