网站建设资讯

NEWS

网站建设资讯

如何使用正则表达式查找相似单词

这篇文章将为大家详细讲解有关如何使用正则表达式查找相似单词,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

公司主营业务:网站设计制作、网站建设、移动网站开发等业务。帮助企业客户真正实现互联网宣传,提高企业的竞争能力。创新互联是一支青春激扬、勤奋敬业、活力青春激扬、勤奋敬业、活力澎湃、和谐高效的团队。公司秉承以“开放、自由、严谨、自律”为核心的企业文化,感谢他们对我们的高要求,感谢他们从不同领域给我们带来的挑战,让我们激情的团队有机会用头脑与智慧不断的给客户带来惊喜。创新互联推出余杭免费做网站回馈大家。

问题描述:

在这个实例中你要解决如下几个问题。

1、想要在一个字符串中找到所有的color和colour。

2、想要找到这3个以"at”结尾的单词中的任意一个:bat、cat或rat。

3、想要找到以phobia结尾的单词。

4、想要找的名字"Steven”的常见变形:Steve、Steven和Stephen。

5、想要匹配术语"regular expression”的所有常见形式。

解决方案:

下面按顺序列出用来解决这些问题的正则表达式。所有这些解决方案中都使用了不区分大小写的选项。

问题1:color和colour

\bcolou?r\b

正则选项:不区分大小写

正则流派:.NET、Java、JavaScript、PCRE、Perl、Python、Ruby

问题2:bat、cat或rat

\b[bcr]at\b

正则选项:不区分大小写

问题3:以"phobia"结尾的单词

\b\w*phobia\b

正则选项:不区分大小写

问题4:Steve、Steven和Stephen

\bSte(?:ven?|phen)\b

问题5:"regular expression”的变体

\breg(?:ular·expressions?|ex(?:ps?|e[sn])?)\b

正则选项:不区分大小写

正则流派:.NET、Java、JavaScript、PCRE、Perl、Python、Ruby

解析:

\b                            #判断一个单词边界位置

 reg                        #匹配"reg”

 (?:                         #分组但是不捕获

   ular\                    #        匹配"ular”

    expressions?        #       匹配"expression”或"expressions"

   |                           #  或者:

  ex                         #       匹配"ex”

  (?:                        #        分组但是不捕获

    ps?                     #            匹配"p”或"ps"

   |                           #       或者:

    e[sn]                   #            匹配"es”或"en"

  )?                          #         结束非捕获分组,整个分组为可选

 )                             # 非捕获分组的结束       

\b                            #判断一个单词边界位置

注:这5个正则表达式都使用了单词边界(<\b>)确保只会匹配整个单词。

关于“如何使用正则表达式查找相似单词”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。


本文标题:如何使用正则表达式查找相似单词
本文地址:http://cdweb.net/article/gjdgpj.html