正则结束词

时间:2012-03-09 11:04:37

标签: regex

我太近了!

我需要使用正则表达式将单词'hanna'与单词的结尾相匹配。我知道下面会匹配这个,但我只想匹配字母a-z

hanna[\S]*

e.g。 ... hannafoo将在以下实例中匹配

test hannafoo bar

...但下面的内容不匹配

test hanna-foo bar

2 个答案:

答案 0 :(得分:0)

我不确定我是否理解你,但是你需要这样的东西:

[hH]anna[a-zA-Z]+

答案 1 :(得分:0)

您可以使用hanna[a-z]+

  • \w:匹配任何字母

    $ echo -e 'test hanna-foo bar' | perl -ne '/(hanna[a-z]+)/i && print "$1\n"'
    
    $ echo -e 'test hannafoo bar' | perl -ne '/(hanna[a-z]+)/i && print "$1\n"'
    hannafoo
    

修改

根据您的评论修正了正则表达式,添加了代码示例。

这是你所期望的:匹配以hanna开头的单词,但是更长?

修改

修正了由于最新评论,最后一次尝试,因为我真的不明白你的问题...