Chinaunix首页 | 论坛 | 博客
  • 博客访问: 2072797
  • 博文数量: 470
  • 博客积分: 10206
  • 博客等级: 上将
  • 技术积分: 5620
  • 用 户 组: 普通用户
  • 注册时间: 2008-07-03 12:50
文章分类

全部博文(470)

文章存档

2012年(1)

2011年(18)

2010年(47)

2009年(404)

分类:

2009-06-19 21:57:48

| | | |
[] [] [] [] []

新手




CU编号: 1924127
注册:2009-6-18
最后登录: 2009-06-19
帖子:
精华:0







状态:...离线...

[] [] [博客]


[]     顶部
发表于 2009-6-19 17:19 
匹配所有字符都是大写字母,然后打印1。
代码如下:
Input=DD
echo "$Input" | awk '{if($0~/^[A-Z]\{1,\}$/) print "1"}'
这样写为什么得不到想要的结果,正则表达式有问题,请高手出来指点一下!



您对本贴的看法:
| | |
  帅哥 (黑哥)
精灵使



CU编号: 631768
注册:2007-10-22
最后登录: 2009-06-19
帖子:
精华:0







状态:...离线...

[] [] [博客]


[]     顶部
发表于 2009-6-19 17:21 
回复 #1 neunaruto 的帖子

Input=DD
echo "$Input" | awk '/^[A-Z]+/ {print 1}'



您对本贴的看法:

__________________________________

LIVE FREE OR DIE!     K.I.S.S.


| | |
  帅哥 (HH)
光明使者
学习一点,进步一点



CU编号: 546387
注册:2007-4-2
最后登录: 2009-06-19
帖子:
精华:0







状态:...离线...

[] [] [博客]


[]     顶部
发表于 2009-6-19 17:24 


QUOTE:
原帖由 blackold 于 2009-6-19 17:21 发表
Input=DD
echo "$Input" | awk '/^[A-Z]+/ {print 1}'

print后面有笔误吧?:mrgreen:
$1



您对本贴的看法:

__________________________________

Linux centos 2.6.18-92.el5
| | |
  帅哥 (暗夜星空)
法王
休息休息



CU编号: 306408
注册:2005-8-25
最后登录: 2009-06-19
帖子:
精华:0







来自:广州<-->杭州
状态:...离线...

[] [] [博客]


[]     顶部
发表于 2009-6-19 17:24 
回复 #2 blackold 的帖子

不对哦~~
Input=DDDdD的时候呢~:mrgreen:



您对本贴的看法:

__________________________________

有时候回答问题是信口开河......
因此不保证所有回复问题的答案的准确性.
如果正好是对的,那是碰到了死耗子..呵呵.
想着休息,不想做事!
| | |

新手




CU编号: 1924127
注册:2009-6-18
最后登录: 2009-06-19
帖子:
精华:0







状态:...离线...

[] [] [博客]


[]     顶部
发表于 2009-6-19 17:28 
如果全是大写英文字符的话,才让它打印“1”。
Input=De
echo "$Input" | awk '/^[A-Z]+/ {print 1}'
打印1。

[ 本帖最后由 neunaruto 于 2009-6-19 17:30 编辑 ]



您对本贴的看法:
| | |
  帅哥 (狼烟)
光明使者
八十万色狼总教头



CU编号: 547805
注册:2007-4-5
最后登录: 2009-06-19
帖子:
精华:0







来自:北京
状态:...离线...

[] [] [博客]


[]     顶部
发表于 2009-6-19 17:30 


QUOTE:
原帖由 neunaruto 于 2009-6-19 17:28 发表
没有,如果全是大写英文字符的话,想让它打印“1”。
Input=De
echo "$Input" | awk '/^[A-Z]+/ {print 1}'
还是打印1。

注意“全是”,从行首匹配到行尾。

CODE:
echo "$Input" | awk '/^[A-Z]+$/ {print 1}'




您对本贴的看法:
| | |

圣骑士




CU编号: 791268
注册:2008-12-5
最后登录: 2009-06-19
帖子:
精华:0







状态:...离线...

[] [] [博客]


[]     顶部
发表于 2009-6-19 17:31 
回复 #4 liaosnet 的帖子

echo "$Input"|awk '$0~/^[A-Z]+$/{print "1"}'
這樣可以。



您对本贴的看法:
| | |
  帅哥 (黑哥)
精灵使



CU编号: 631768
注册:2007-10-22
最后登录: 2009-06-19
帖子:
精华:0







状态:...离线...

[] [] [博客]


[]     顶部
发表于 2009-6-19 17:32 
根据具体要求自己改一下:

CODE:
……|awk '/^[A-Z]+$/{print 1}'




您对本贴的看法:

__________________________________

LIVE FREE OR DIE!     K.I.S.S.


| | |
  帅哥
风云使者




CU编号: 690903
注册:2008-4-13
最后登录: 2009-06-19
帖子:
精华:0







状态:...在线...

[] [] [博客]


[]       顶部
发表于 2009-6-19 17:32 
回复 #1 neunaruto 的帖子

echo "DDDDAETTTTTTTTTT" | awk '$0~/^[A-Z]+$/{ print "1"}'



您对本贴的看法:
| | |

圣骑士




CU编号: 791268
注册:2008-12-5
最后登录: 2009-06-19
帖子:
精华:0







状态:...离线...

[] [] [博客]


[]     顶部
发表于 2009-6-19 17:32 
試試這個。
echo "$Input"|awk '$0~/^[A-Z]+$/{print "1"}'


阅读(721) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~