shell编程中if [[ ! ${a} =~ ^[0-9]+ ]]条件判断式如何工作的?

if [[ ! ${a} =~ ^[0-9]+ ]]这个语句具体是怎么工作的?
我只知道这个好像是如果变量a不是以数字开头就执行if语句,但是
特别的:

  1. =~是什么意思?
  2. ^[0-9]+ 是什么意思? 另外这个判断使用的是扩展正则表达式?

3个回答

这里只有
^[0-9]+是正则表达式,表示一个数字,别的都不是正则。

只是原样的字符

=~意思是匹配后面的正则式,^是匹配开头,[0-9]意思是匹配0-9的字符也就是数字,+是指匹配不少于一次,也就是有不少于一个数字

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐