py函数列表 -正则表达式

#实现单词添加复数的形式 ,这个比较好啊

import re


def match_sxz(noun):
      return re.search('[sxz]$', noun)


def apply_sxz(noun):
      return re.sub('$', 'es', noun)


def match_h(noun):
      return re.search('[^aeioudgkprt]h$', noun)


def apply_h(noun):
      return re.sub('$', 'es', noun)


def match_y(noun):
     return re.search('[^aeiou]y$', noun)


def apply_y(noun):
     return re.sub('y$', 'ies', noun)


def match_default(noun):
     return True


def apply_default(noun):
     return noun + 's'


rules = ((match_sxz, apply_sxz),
(match_h, apply_h),
(match_y, apply_y),
(match_default, apply_default)
)


def plural(noun):
    for matches_rule, apply_rule in rules:
        if matches_rule(noun):
             return apply_rule(noun)
  

"""main """
print plural('why')

发布了71 篇原创文章 · 获赞 7 · 访问量 9万+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章