今天调整一个同事的需求时,要计算一个含税金额.报表内已经取到税率,但存在的形式是字符串格式:16%. 正好SAP内有一个标准函数:PREPARE_STRING 可以处理字符串,将特别标志替换为有效标志.通过函数只保留数字,再转换成整数,再进行后续运算. ) TYPE c. DATA tax_rate TYPE I. tax_rate_char = ' 16%'. CALL FUNCTION 'PREPARE_STRING' EXPORTING i_valid_chars = ' 01234567
)) ) BEGIN ; ) default ''; set v_length=CHAR_LENGTH(Varstring); DO )) )) ) THEN )); END IF; ; END WHILE; RETURN REVERSE(v_Tmp); END; 调用函数: select GetNum(字段) from table;-- GetNum中的字段名不需要用引号括起来
写出将字符串中的数字转换为整型的方法,如:"as31d2v"->312,并写出相应的单元测试,输入超过int范围时提示不合法输入. public struct ConvertResult { public ConvertState State; public int Number; } public enum ConvertState { // 输入不合法 InValid = , // 输入合法 Valid = } public class StringHelper { publ
create function dbo.F_Get_No ( @No varchar(100) ) RETURNS bigint AS BEGIN WHILE PATINDEX('%[^0-9]%',@No)>0 BEGIN SET @No=STUFF(@No,PATINDEX('%[^0-9]%',@No),1,'') --删掉一个非数字的字符,循环结束,剩余的为数字部分 END RETURN CONVERT(bigint,@No) END 此函数可以返回某字符串中的数字部分 PATINDEX
在C语言中,将字符串中的数字转换为整型的方法是是利用atoi这个函数.在Java中,我们可以利用parseInt方法来实现,具体代码如下: public class HelloWorld { public static void main(String[] args){ String str = "12345"; int c = Integer.parseInt(str); //将字符串转换为整型数 int a = c + 100 ; System.out.println(a); }