0

我一直在互联网上搜索这个问题的答案几个小时,但我找不到任何东西。我对 FoxPro 的体验非常有限。这可能是两个问题合二为一。

第一个问题:我有一个项目列表,其中一些项目可能包含一个逗号,这在我将数据传输到的程序中是不允许的。

我基本上需要这样的声明:

REPLACE ALL Field1 with STRTRAN(field1, "," , "<break time='250ms' />"

这样的事情会完成我需要的吗?

第二个问题:我有 5 个单独的字段,我需要将数据从这些字段移到一个新字段中。像这样的东西。

字段 1:10 月字段 2:21 字段 3:2013 字段 4:5:00 字段 5:下午

FinalField 感谢您的电子邮件,您的约会安排在 [Field1] [Field2] [Field3] 在 [Field4] [Field5]。

这将包含数千条记录,因此我想制定一个声明,将它们一次全部替换。

REPLACE ALL FinalField with STRTRAN(

之后,我不确定括号内需要什么格式才能用我需要的内容正确替换该字段。提前谢谢你的帮助。

4

2 回答 2

3

第一个问题:您所写的内容会将每次出现的逗号替换为“<break time='250ms' />”。不确定这就是你所追求的。要简单地删除所有逗号:

用 STRTRAN(field1, [,], []) 替换所有 field1

会做的。在处理逗号、引号等时,我喜欢使用 [ ] 字符作为字符串分隔符——为了清楚起见。

查看 TEXTMERGE() 函数来回答您的第二个问题。

于 2013-01-11T18:26:20.883 回答
1

对于您的第二个问题,您可以编写如下表达式:

REPLACE ALL FinalField WITH ;
  "Thank you for your email, your appointment is scheduled for " + ;
  ALLTIRIM(Field1) + " " + TRANSFORM(Field2) + ;
  TRANSFORM(Field3) + " at " + ;
  ALLTRIM(Field4) + ALLTRIM(Field5) + "."

这假定 Field1、Field4 和 Field5 是字符,而 Field2 和 Field3 是数字。如果不是这样,您将不得不调整它们。

如果您要一次性导出到另一个应用程序,您可能会发现编写 SQL 查询以将所有数据放入您想要的格式然后导出查询生成的游标会更容易。

于 2013-01-11T21:41:02.343 回答