如何用bash的正则表达式对字符串同时掐头去尾?

某鸟 2008-08-02 03:15:08
如何掐头我知道,如何去尾我也会了……可是……同时去掉头尾怎么办啊???汗~
%x=aabbaarealwwvvww
%echo "${x%w*w}"

%echo "${x#a*a}"
bbaarealwwvvww

要得到中间的aareal怎么办?
...全文
526 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
lbaby 2008-08-07
  • 打赏
  • 举报
回复


sed 比较简单的:
[of@lbaby ~]$ echo wwwaaabbb | sed 's/^[^a]*\(a\+\)[^a]*$/\1/'
aaa
[of@lbaby ~]$
用户 昵称 2008-08-06
  • 打赏
  • 举报
回复
老人啊,又见面了,不会!
某鸟 2008-08-06
  • 打赏
  • 举报
回复
真不容易~竟然有人回复了~~~

真的是一句实现不了啊?!那偶就不问了……

偶用了三句,已经实现了……呵呵,在shell里,一个小问题还在乎差两句吗?:p
只是我以为是自己不会写……

sed偶还不会用呢,不好意思,嘿嘿……

那就这样,先ok了……多谢楼上!
fierygnu 2008-08-06
  • 打赏
  • 举报
回复
问题不简单,呵呵。
bash好像不支持,用sed行吗,嘿嘿。

虽然bash3.0以上有=~,但也需要从数组里取,一次完成,网上找找吧。
某鸟 2008-08-04
  • 打赏
  • 举报
回复
没有牛人了吗?
一句话不能实现吗?
问题太简单了?

23,124

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 应用程序开发区
社区管理员
  • 应用程序开发区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧