Perl 数字与字符串运算符之区别
在Perl中,字符串比较和数字比较是由不同的运算符来完成的:
- 数字比较运算符: <, >, <=, >=, ==, !=
- 字符串比较运算符: lt, gt, le, ge, eq, ne
- cmp: 比较字符串,返回 -1, 0 或者 1。
- <=>: 比较数字,返回 -1, 0 或者 1。
- =~:用正则表达式来匹配,匹配的话返回True。
- !~:和 =~ 相反,不匹配返回True。
- 例子
#!/usr/bin/env perl
use strict;
use warnings;
my $num1 = 1;
my $num2 = 1.0;
my $two_numbers = "$num1 and $num2";
my $str1 = "1abc";
my $str2 = "1xyz";
my $two_strings = "$str1 and $str2";
print "Compare two numbers using !=\n";
if ($num1 != $num2) {
print "$two_numbers are not equal\n";
} else {
print "$two_numbers are equal\n";
}
print "Compare two strings using !=: get wrong result\n";
if ($str1 != $str2) {
print "$two_strings are not equal\n";
} else {
print "$two_strings are equal\n";
}
print "Compare two numbers using ne\n";
if ($num1 ne $num2) {
print "$two_numbers are not equal\n";
} else {
print "$two_numbers are equal\n";
}
print "Compare two strings using ne\n";
if ($str1 ne $str2) {
print "$two_strings are not equal\n";
} else {
print "$two_strings are equal\n";
}
结果:
Compare two numbers using !=
1 and 1 are equal
Compare two strings using !=: get wrong result
Argument "1xyz" isn't numeric in numeric ne (!=) at compare_operators.pl line 23.
Argument "1abc" isn't numeric in numeric ne (!=) at compare_operators.pl line 23.
1abc and 1xyz are equal
Compare two numbers using ne
1 and 1 are equal
Compare two strings using ne
1abc and 1xyz are not equal
转载于:https://www.cnblogs.com/xiaopengren/p/3431211.html
Perl 数字与字符串运算符之区别相关推荐
- shell中if条件字符串、数字比对,[[ ]]和[ ]区别
原文:https://www.cnblogs.com/include/archive/2011/12/09/2307905.html shell括号 学习shell的时候总是被shell里的条件判断方 ...
- shell中if条件字符串、数字比对,` `和[ ]区别
引用: http://www.51testing.com/?uid-7701-action-viewspace-itemid-13731 http://blog.csdn.net/sunboy_205 ...
- java中数字作为布尔值_day50 java Script 数字和字符串 布尔值和数组 运算符 条件判断和三元运算...
上节回顾: day501.前情回顾 CSS属性: float浮动的规则1. 浮动规则: 浮动只控制自己 如果前面的标签也是浮动的,就挨着放 如果前面的标签不浮动,则下方摆放 如果把块级标签设置成浮动, ...
- HTML学习9 JS 数字和字符串 变量的类型 运算符和表达式 布尔值和关系运算符、逻辑运算符
JavaScript简介 1.1 JavaScript的用途 JavaScript用来制作web页面交互效果,提升用户体验. 简单列出几个JavaScript能够制作的页面效果,它能干什么: 轮播图 ...
- 3、常用关键字,变量赋值,多个变量赋值,标准数据类型,数字,字符串,列表,元组,字典,数据类型转换
3Python变量类型 3.1常用关键字 系统中有一些常用关键字不可以用来当做标识符. and lambda except while del return import or class try i ...
- 杂记1:正向反向迭代器,不同stl容器的lower_bound的使用(set,map,vector,arr,pair),数字转字符串
感觉自己记性真的不行,很多之前用过,查过的知识点都忘掉了,开个博客记一下吧. 文章目录 迭代器 lower_bound,upper_bound 可以忽略,我暂时没发现用处 这个比较有用:不同容器的lo ...
- atoi stoi 以及数字与字符串的相互转换(sstream的使用)
https://www.cnblogs.com/weedboy/p/7160152.html 1.c++的atoi和stoi一些区别 对c++标准库中字符串转化为int的两个函数atoi()和stoi ...
- Python数字和字符串学习笔记
微信公众号:运维开发故事,作者:wanger python数据类型: Number(数字) String(字符串) List(列表) Dictonary(字典) Tuple(元组) sets(集合) ...
- python数据结构之数字和字符串
python数据类型: Number(数字) String(字符串) List(列表) Dictonary(字典) Tuple(元组) sets(集合) 其中数字.字符串.元组是不可变的,列表.字典是 ...
最新文章
- 声音信标规格说明 2020-5-25
- laravel实现数据库读写分离配置或者多读写分离配置
- java 令牌解析_Java编程guava RateLimiter实例解析
- LR与SVM的相同点和不同点
- 算法--组合数学:杨辉三角数学分析以及Java实现
- BigDecimal 加减乘除
- 对于arm嵌入式系统的一点认识
- C++如何判断一个程序是 死锁 还是 死循环,如何进行问题定位与分析
- CSS颜色代码大全及a标签超链接颜色改变
- Informix 12.10版本新特性-2
- 【第二趴】uni-app开发工具(手把手带你安装HBuilderX、搭建第一个多端项目初体验)
- python绘制缓和曲线_在cad中画缓和曲线的绘制方法
- linux gcc忽略警告,gcc 禁止warning
- 给定激励,求零输入响应、零状态响应,全响应
- 2011-07 《信息资源管理 02378》真卷解析,逐题解析+背诵技巧
- 梦几月,醒几年,今夕是何年。又一年,任时光流逝,回首已是2022年
- 计算机博士 英语词汇,2017考博英语词汇
- MAC下终端走代理的几种方法
- linux dns慢导致ftp慢,ftp登陆慢,登陆超时,上传速度慢解决方法
- 名编辑电子杂志大师教程 | 如何制作手机版电子杂志
热门文章
- go语言 select
- Python Logging Formatter
- selection.text
- git 理解 远程分支
- oracle database version,Oracle Database Version History
- 运维真的被云革命掉了吗?
- RedHat6.7安装教程,图解,超详细
- VMware 大中华区原厂认证讲师(大陆地区)2018 年 8 月 8 日更新
- Postman使用总结(1)——Postman 自动化测试小结
- 四级英语图表作文真题计算机,四级作文辅导二:图表类作文(范文、模板、必备句型。对了,还有作业)...