oracle 如何判断数字字串中是不是含有英文字母
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了oracle 如何判断数字字串中是不是含有英文字母相关的知识,希望对你有一定的参考价值。
如题!
简单的:一条语句搞定,SqlPlus里面select decode(length(replace(translate('字符串的值','0123456789.',' '),' ','')),0, 'is number','is not a number') from dual; 麻烦点的:写function在oracle数据库中,create or replace function f_str_or_num(str varchar2) return varchar2 is2 v_num number;
3 v_return varchar2(60);
4 begin
5 v_num:=to_number(str);
6 v_return:=str||' is a number string!';
7 return v_return;
8 exception when others then
9 v_return:=str||' is not a number string!';
10 return v_return;
11 end f_str_or_num; 然后调用select f_str_or_num('字符串的值) from dual; 参考技术A 用到了一个函数。nvl(n,0),n表示的是你要判断的字段,比如emp表中的empno,就是nvl(empno,0)。如果empno中含有字母。那么就蒋0赋值给他 。如果你是判断,那么可以if nvl(empno,0)==0 then ···希望对你有帮助!
日常小算法
字串出现的次数
给予两个英文字串,计算出第一个字串出现在第二个字串的次数
输入说明:
输入分为两行,第一行是有英文大小写字母与数字所组成的字串,长度不超过120个字母
第二行也是由英文大小写字符与数字所组成的字串,长度不超过512个字母
输出说明:
第一个字串出现在第二个字串中的次数;
Sample Input | Sample Output |
aa aaa123bbab |
2 |
baa 231baaajfd |
2 |
baba
|
1 |
这是我写的小案例:
package com.baidu.response; import java.util.Scanner; public class Test1 { public static void main(String[] args) { Scanner sc=new Scanner(System.in); System.out.println("请输入第一行数据"); String str1=sc.nextLine(); System.out.println("请输入第二行数据"); String str2=sc.nextLine(); String array1[]=str1.split(""); String array2[]=str2.split(""); if(array1.length>128 || array2.length>528){ System.out.println("所填数字不合规范!!!"); return ; } int i; int j; int k; int sum=0; for(i=1;i<array2.length;i++){ k=1; for(j=i;j<array2.length;j++){ if(array1[k].equals(array2[j])){ if(k==array1.length-1){ sum=sum+1; break; }else{ if(k<array1.length-1){ k++; }else{ break; } } }else{ break; } } } System.out.println(sum); } }
以上是关于oracle 如何判断数字字串中是不是含有英文字母的主要内容,如果未能解决你的问题,请参考以下文章