PostgreSQL判断字符串包含的几种方法:
方式一: position(substring in string):
position(substring in string)函数:参数一:目标字符串,参数二原字符串,如果包含目标字符串,会返回目标字符串笫一次出现的位置,可以根据返回值是否大于0来判断是否包含目标字符串
select position('aa' in 'abcd'); position ---------- 0 select position('ab' in 'abcd'); position ---------- 1 select position('ab' in 'abcdab'); position ---------- 1
方式二: strpos(string, substring)
strpos(string, substring)函数:参数一:原字符串,目标字符串,声明子串的位置,作用与position函数一致。
select position('abcd','aa'); position ---------- 0 select position('abcd','ab'); position ---------- 1 select position('abcdab','ab'); position ---------- 1
方式三:使用正则表达式
如果包含目标字符串返回t,不包含返回f
select 'abcd' ~ 'aa' as result; result ------ f select 'abcd' ~ 'ab' as result; result ------ t select 'abcdab' ~ 'ab' as result; result ------ t
方式四:使用数组的@>操作符(不能准确判断是否包含)
select regexp_split_to_array('abcd','') @> array['b','e'] as result; result ------ f select regexp_split_to_array('abcd','') @> array['a','b'] as result; result ------ t
注意下面这些例子:
select regexp_split_to_array('abcd','') @> array['a','a'] as result; result ---------- t select regexp_split_to_array('abcd','') @> array['a','c'] as result; result ---------- t select regexp_split_to_array('abcd','') @> array['a','c','a','c'] as result; result ---------- t
可以看出,数组的包含操作符判断的时候不管顺序、重复,只要包含了就返回true,在真正使用的时候注意。
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
《魔兽世界》大逃杀!60人新游玩模式《强袭风暴》3月21日上线
暴雪近日发布了《魔兽世界》10.2.6 更新内容,新游玩模式《强袭风暴》即将于3月21 日在亚服上线,届时玩家将前往阿拉希高地展开一场 60 人大逃杀对战。
艾泽拉斯的冒险者已经征服了艾泽拉斯的大地及遥远的彼岸。他们在对抗世界上最致命的敌人时展现出过人的手腕,并且成功阻止终结宇宙等级的威胁。当他们在为即将于《魔兽世界》资料片《地心之战》中来袭的萨拉塔斯势力做战斗准备时,他们还需要在熟悉的阿拉希高地面对一个全新的敌人──那就是彼此。在《巨龙崛起》10.2.6 更新的《强袭风暴》中,玩家将会进入一个全新的海盗主题大逃杀式限时活动,其中包含极高的风险和史诗级的奖励。
《强袭风暴》不是普通的战场,作为一个独立于主游戏之外的活动,玩家可以用大逃杀的风格来体验《魔兽世界》,不分职业、不分装备(除了你在赛局中捡到的),光是技巧和战略的强弱之分就能决定出谁才是能坚持到最后的赢家。本次活动将会开放单人和双人模式,玩家在加入海盗主题的预赛大厅区域前,可以从强袭风暴角色画面新增好友。游玩游戏将可以累计名望轨迹,《巨龙崛起》和《魔兽世界:巫妖王之怒 经典版》的玩家都可以获得奖励。