当前位置: 首页 > news >正文

网站建设推广公司排名免费发布产品信息的网站

网站建设推广公司排名,免费发布产品信息的网站,做网站暴利赚钱,网站开发技术是什么文章目录 判断字符串是否全为数字1、使用 trimtranslate 函数2、使用 replacetranslate 函数3、使用 regexp_like 函数 translate 函数讲解1、基本用法,字符对应替换2、 如果 to_string 没有对应字符则删除额外的字符3、如果 to_string 对应字符过多不影响4、如果 t…

文章目录

      • 判断字符串是否全为数字
        • 1、使用 trim+translate 函数
        • 2、使用 replace+translate 函数
        • 3、使用 regexp_like 函数
      • translate 函数讲解
        • 1、基本用法,字符对应替换
        • 2、 如果 to_string 没有对应字符则删除额外的字符
        • 3、如果 to_string 对应字符过多不影响
        • 4、如果 to_string 为空字符,则直接返回 NULL
        • 5、如果想删除 expr 中某些字符,除了 from_strimg 拥有这些字符外,还应传入一个不相关字符,同时 to_string 中也需要传入该字符
        • 6、 如果 from_strimg 相同字符对应 to_string 多个字符,按去第一个;
        • 8、判断 from_strimg 中包含的字符是否一致(排序可以不同)
        • 9、同 replace 函数比较

判断字符串是否全为数字

最近在工作中遇到这样一个问题,判断字符串中是否全为数字,Oracle 数据库的操作方法有以下几种:

1、使用 trim+translate 函数
select * from dual where trim(translate(column,'0123456789',' ')) is NULL;

这里要注意的是:translate 函数的第三个参数是一个空格,不是’’, 因为translate的第三个参数如果为空的话,那么永远返回’’,这样的就不能达到过滤纯数字的目的。这样把所有的数字都转化为空格,如果全部是由数 构成,那么一旦trim后自然是空,实现了上述目标。当然如果想排除空项的话,可以这样写:

select * from dual where trim(translate(nvl(column,'x'),'0123456789',' ')) is NULL;--x 表示任何'0-9'以外的字符。

NVL函数是一个空值转换函数

NVL(exp1,exp2)函数,如果exp1为空值,则返回exp2;否则返回exp1。

注意:当 column 的值为空格时,也会被筛选到,所以比较好的方法是使用 replace+translate 函数。

2、使用 replace+translate 函数
select * from dual where replace(translate(column,'0123456789','0'),'0','') is NULL;
3、使用 regexp_like 函数
select * from dual where regexp_like(column,'^[0-9]+[0-9]$')

这里需要注意的是:regexp_like 函数不是在所有的 Oracle 版本中都能使用。regexp_like 是 Oracle 支持正则表达式的函数中的一个,共有四个函数:regexp_like ,regexp_replace,regexp_instr,regexp_substr。

translate 函数讲解

上述方法比较关键的是 translate 函数,对于该函数查看相关讲解如下:

translate(expr, from_strimg, to_string)

translate 函数返回 expr,其中 from_string 中的每个字符都被 to_string 中的相应字符替换。若 expr 中某个字符未出现在 from_string 中,则该字符不会被替换。如果 expr 是一个字符串,那么你必须把它放在单引号中。 from_string 参数值可以包含比 to_string 更多的字符。在这种情况下,from_string 末尾的多余字符在 to_string 中没有对应的字符。如果这些额外的字符出现在 expr 中,那么它们将从 expr 返回值中移除。

to_string 参数值为空字符串时,expr 返回值中删除 from_string 中的所有字符。Oracle 数据库将空字符串解释为空,如果此函数具有空参数,则返回 null。

translate 提供了与 replace 函数相关的功能。 replace 允许用一个字符串替换另一个字符串,以及删除字符串。 translate 允许在一个操作中进行多个单字符,一对一的替换。

实际案例:

1、基本用法,字符对应替换
select translate('1234567','123' ,'abc') from dual ;--1替换为a,2替换为b,3替换为c
-------
abc4567
2、 如果 to_string 没有对应字符则删除额外的字符
select translate('1234567','123' ,'ab') from dual;--‘1234567’中的‘3’被删掉;
-----
ab4567
3、如果 to_string 对应字符过多不影响
select translate('1234567','123' ,'abccd') from dual;	---‘123’对应‘abc’
4、如果 to_string 为空字符,则直接返回 NULL
select translate('1234567','123' ,'') from dual;
----
null
5、如果想删除 expr 中某些字符,除了 from_strimg 拥有这些字符外,还应传入一个不相关字符,同时 to_string 中也需要传入该字符
SELECT  translate('0123456789','@123' ,'@') FROM dual
----
0456789

其实原理和 3 一样,’@123’比’@'长,额外的’123’字符在 expr 中出现,因此去除掉 expr 中的’123‘。

需要注意的是,如果更改’@'字符在 from_strimg 中的位置,结果就不一样了。

SELECT  translate('0123456789','123@' ,'@') FROM dual
----
0@456789

原因在于’123@‘中的’1’字符和’@'对应,则’23@'就属于额外的字符,从 expr 返回值中删除’23’字符。

6、 如果 from_strimg 相同字符对应 to_string 多个字符,按去第一个;
SELECT  translate('01233456789','1233' ,'abcd') FROM dual
----
0abcc456789

7、 如果想保留某些特定字符筛选掉其他的

比如筛掉汉字保留数字

先删除数字

SELECT  translate('我5喜2欢1你','@0123456789' ,'@') FROM dual
-----
我喜欢你

再用筛选出的汉字去筛选原来的语句留下数字,

SELECT  translate('我5喜2欢1你','@'||translate('我5喜2欢1你','@0123456789' ,'@') ,'@') FROM dual
----
521
8、判断 from_strimg 中包含的字符是否一致(排序可以不同)
SELECT  1 FROM dual where translate('abcdefgh','bcd' ,'111111')=translate('abcdefgh','cbd' ,'111111')
----
1
----反之
SELECT  1 FROM dual where translate('abcdefgh','bdd' ,'111111')=translate('abcdefgh','cbd' ,'111111')
----
null
9、同 replace 函数比较
select translate('itmyhome#163%com', '#%', '@.') from dual;
select replace('itmyhome#163%com', '#%', '@.') from dual;---------
itmyhome@163.com
itmyhome#163%com
http://www.dt0577.cn/news/1567.html

相关文章:

  • 搭建wordpress环境搭建北京seo分析
  • 网站建设及服务合同网站怎么搭建
  • 网络公司给别人做网站的cms是买的授权么网推拉新app推广接单平台
  • 西安集团网站建设下载关键词推广软件
  • 音乐网站建站软文发布网站
  • 柳州学校网站建设西安网站建设方案优化
  • 手机网站开发费用网络营销专业就业前景
  • 厦门企业网站建设补贴手机上可以创建网站吗
  • 重庆渝能建设集团有限公司网站关键词整站优化公司
  • discuz做网站赚钱经历培训如何优化网站
  • 房管局网站做房查360信息流广告平台
  • 漳州最具口碑的网站建设关键词com
  • 微商城运营方案成都seo优化
  • 城管网站内容建设方案搜狗竞价推广效果怎么样
  • 大连凯杰建设有限公司网站seo优化是什么
  • B2C网站的后台管理功能包括免费刷粉网站推广免费
  • 网站建设注意网站排名掉了怎么恢复
  • 朝阳做网站的公司seo价格查询公司
  • wordpress更改网站内容营销策划咨询机构
  • 新疆建设工程综合信息网官网郑州seo教程
  • 常用的seo网站优化排名网络推广团队
  • 外发加工网站淘宝营销推广方案
  • 做网站的升级人百度首页 百度一下
  • 宁波网站推广运营公司搜索引擎技术基础
  • 高职两学一做专题网站刷关键词怎么刷
  • 成都建工官网seo零基础教学
  • 北京公司网站制作公司短视频怎么赚钱
  • 哈尔滨网站建设制作价格厦门人才网手机版
  • 研发项目流程八个阶段seo优化或网站编辑
  • 运城网站建设公司有多少发布外链的平台有哪些