如何在APL中连接字母和数字的组合?

时间:2018-12-04 14:45:46

标签: string concatenation number-formatting apl dyalog

我在Dyalog 17中,希望生成唯一的名称以与其图形对象库一起使用。因此,例如,我有一个字母'l',并想取一个数字1,将其转换为字符,然后将两者串联在一起形成'l1'。这在其他语言中是微不足道的,但是我找不到说明如何在APL中执行此操作的文档。感谢您的帮助!

3 个答案:

答案 0 :(得分:2)

要将字母'l'连接到数字1以形成字符'l1',请执行以下操作:

'l',⍕1

答案 1 :(得分:2)

此处可以使用系统功能⎕FMT。例如:

       'P<I>ZI7' ⎕FMT ⍳10 
I000000
I000001
I000002
I000003
I000004
I000005
I000006
I000007
I000008
I000009

format字符串指定将数字格式化为整数,宽度为7,零填充,并在字母'I'的正左修饰。

答案 2 :(得分:0)

我在大型机上使用APL2,所以我的答案可能不完全是您想要的,但是我将按照以下方法进行操作:

∊⍕¨'L',1

因此,首先要键入字母和数字。然后FORMAT EACH产生一个字符标量向量。最后,使用ENLIST生成一个简单的向量。

这是SteveH答复的略微概括。从某种意义上讲,它更通用,它可以处理输入字符串(而不是标量),并且无论数字或字母排在前面都可以很好地工作。