您好我是Crystal Reports的新手,我正在使用Crystal Reports 2008,我想知道如何删除字符串中的字母字符,只剩下数字。这有功能吗?
示例:Point 231 / Point 323 / USP 342 输出:231/323/342
谢谢, Captain16
答案 0 :(得分:3)
使用以下公式
stringvar str;
stringvar str1;
numbervar counter;
numbervar leng;
leng := len({Your_Field});
if leng>0 then
(
for counter := 1 to leng do
(
If (Mid({Your_Field}, counter, 1)) in "a" to "z" Then
(
str1:=str1 + Mid({Your_Field}, counter, 1)
)
else
(
str := str + Mid({Your_Field}, counter, 1)
)
);
str
)
这里str
将获得非字母表,而str1
将只获取给定字符串中的字母。 {Your_Field}
可以是包含字符串的字段或参数。通过打印str
可以删除字母表...
231 / 323 / 342
这是我给你输入的输出!
希望这会有所帮助,请尝试并取回结果!
答案 1 :(得分:0)
对不起,我不能评论Hariharan Anbazhagan的代码(我似乎没有足够的声誉)。这是很好的代码,但我会添加LCASE来捕获所有的大写字母。
If LCASE(Mid({?sample}, counter, 1)) in "a" to "z" Then
如果您只想识别数字,还有一个IsNumeric()函数。