如何用linux命令来从一个字符串中获得数字

如何用linux命令来从一个字符串中获得数字,第1张

自己写个函数吧~借助strstr()函数intsubstringnum(constunsignedchar*src,constunsignedchar*sub){if(src==NULL||sub==NULL)rerturn-1unsignedchar*pchar=srcintcount=0while(pchar=strstr(pchar,sub)){count++}returncount}

grep支持三种re,basic re、extended re、perl re。

前两种都无法达到你的需求。用perlre可以,需要参数-P,pattern 为 '^\D*\d(?!.*\d)' ,引起来较妥,\d代表数字写,和 [0-9] 一回事,\D表示非数字,^\D*\d,表示从一行起始至找到第一个数字为止,(?!pattern) 是一个判断,表示从该位置起往后,不符合 pattern 描述时,判断结果为 “真”。(?!.*\d) 表示,从匹配到第一个数字至一行末,无法招待第二个数字。更多Linux知识可参考《Linux就该这么学》。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/7582061.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-07
下一篇 2023-04-07

发表评论

登录后才能评论

评论列表(0条)

保存