首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >mumps语言用于循环相关

mumps语言用于循环相关
EN

Stack Overflow用户
提问于 2010-11-25 19:32:19
回答 4查看 2.3K关注 0票数 2

如果我定义For K= " ABC“:1:3现在"ABC”的值是多少,循环如何执行"ABC",或者如果我接受任何“字符串”,如何递增字符串“ABC”。

Bhas

EN

回答 4

Stack Overflow用户

发布于 2010-11-26 12:26:34

MUMPS通过从左到右读取字符串来将字符串转换为数值。它将使用任何数字和它在结果数字中遇到的第一个句点,并且将在第一个非数字字符处停止。

字符串到数字转换的示例:

String -> Number

" 1234“-> 1234

"1234A“-> 1234

"1234A4321“-> 1234

"“-> 0

"A“-> 0

"ABC“-> 0

票数 5
EN

Stack Overflow用户

发布于 2011-01-19 21:32:30

如果你能接触到流行性出血热系统,就很容易找到答案。只需运行以下例程,该例程可以驻留在一个文件中,例如3.M:

代码语言:javascript
复制
for3

; routine to test FOR command

   FOR K="ABC":1:3 WRITE "K=",K,! QUIT

在我的Linux机器上,我安装了GT.M。你可以在http://sourceforge.net/projects/fis-gtm/上找到它。

下面是输出:

代码语言:javascript
复制
$ gtm -run for3
K=0
K=1
K=2
K=3

HTH Nathan

票数 3
EN

Stack Overflow用户

发布于 2011-02-04 03:39:18

如果你想迭代字符串"ABC“,你可以这样做:

代码语言:javascript
复制
S STR="ABC"
F I=1:1:$L(STR) W $E(STR,I,I),!

$L ($Length)函数将返回STR的长度。在本例中为3,因此for循环将仅迭代3次。

$E ($Extract)函数将提取STR的子串。$E的第一个参数是要从中提取的字符串。第二个参数是起始位置,第三个参数是子串的结束位置。在本例中,我指定了相同的开始和结束位置,以便每次提取一个字符。

还可以将字段分隔符指定为$L函数的第二个参数。因此,如果STR=“姓名|年龄|性别”,您可以通过以下方式写出每个字段:

代码语言:javascript
复制
S STR="NAME|AGE|SEX"
F I=1:1:$L(STR,"|") W $P(STR,"|",1),!

在这里,$L将返回3,并且for循环将迭代3次。

$P函数($Piece)将使用竖线字符(|)作为字段分隔符从STR中提取每个字段,由我决定返回哪个字段。

希望这能帮到你。

igotmumps

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4276544

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档