将字符串转换为Unicode段塞的段塞生成器,并支持将常用拉丁字母替换为ASCII表示。

unicode-slugify-latin的Python项目详细描述


[![生成状态](https://travis-ci.org/eminbugrasaral/unicode-slugify-latin.svg?branch=master)](https://travis-ci.org/eminbugrasaral/unicode-slugify-latin

链接

PYPI:https://pypi.python.org/pypi/unicode-slugify-latin

github:https://github.com/eminbugrasaral/unicode-slugify-latin

#Unicode Slugify(带拉丁语黑客)

unicode slugify是生成unicode slugs的slugerator。原来是 用于Firefox加载项网站为加载项和加载项生成slug 收藏。这些加载项和集合中的许多具有Unicode字符和 需要的不仅仅是简单的音译。

##安装

pip install unicode-slugify-latin

##用法

>>> import slugify
>>> slugify.slugify(u'Bän...g (bang)')
u'bäng-bang'

##拉丁语hack

  • 用类似的ascii表示替换特殊的拉丁字符。
  • 问题:我希望用英语键盘说拉丁语的用户能够搜索我的拉丁字符串。
  • 解决方案:通过启用拉丁文替换将该拉丁文字符串加上slugify,并将该字符串与加上slugify的搜索词匹配。
  • 示例:将“sabanc_niversitesi”选为“sabanci universitesi”,然后用户可以使用“sabanci”、“sabanc_”和“sabanci”等任意组合进行搜索。
  • 注意:不要忘记用replace_latin=true敲击两个字符串

##示例

>>> from slugify import slugify
>>> string_without_latin_letters = slugify(u'ıspanaklı boğaz turşusu', replace_latin=True)
u'ispanakli-bogaz-tursusu'
>>> slugify(u'Ispanakli Bogaz Tursusu') == string_without_latin_letters
True
>>> u'Bogazici'.lower() in slugify(u'boğaziçi', replace_latin=True)
True
>>> slugify(u'çiçek', replace_turkish=True) in slugify(u'ÇİÇEK', replace_latin=True)
True
>>> u'cicek' in slugify(u'ÇİÇEK', replace_latin=True)
True

##要替换的常用拉丁字母列表

  • ,_,_,_->;我
  • ,_,_,_,_->;i
  • 欧,欧,欧,欧,欧,欧->;o
  • ,_,_,_,_->;o
  • ü,_,_->;u
  • ,_,_,_->;u
  • 阿,阿,阿,阿,阿,阿->;a
  • ,_,_,_,->;a
  • ->;不良事件
  • ->;不良事件
  • ,_,_->;e
  • ,_,_->;e
  • ñ->;n
  • 妮->;n
  • ,_->;是
  • ,_->;是
  • ->;s
  • ->;s
  • ->;C
  • 切克
  • ->;克
  • ->;g

##此分叉之后的新参数

  • 替换拉丁语:替换要替换为类似ascii表示的常用拉丁字母。
  • Unicode_对:您可以提供Unicode字符字典及其替换值。例如:{u'xe9','e'}-e将替换为e

##赞助商

##联系人

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
Java SOAP请求,创建主体   java如何将Logj4日志级别转换为JUL日志级别?   java为什么我可以将浮点传递给Double的构造函数?   java从特定的持久性Tibco EMS订阅中删除消息   java为什么会出现“xxx已定义”编译器错误?   如何在java中编写用于用户注册的web服务   java如何在不使用position的情况下打开不同的活动   java My数据库已经更新,但我的安卓 studio仍然没有更新,仍然显示以前获取的数据库   java缺少类型为Long的方法参数的URI模板变量“usuarioEntidade”   java从浏览器中删除jsessionid cookie,此时会话将失效   java解析XML仅获取注释和日期值   razor使用JAVA,如何解析。cshtml文件,并为该文件中现有的C#代码添加参数   java为什么返回空值?   javascript如何通过云函数触发firestore集合   java JFreeChart setRangeZeroBaseline可见   java Android ListView单击以创建新活动   正则表达式使用正则表达式来查找任何数字或重复的单词   Java邮件搜索和排序可减少电子邮件数量   在哪里配置EclipseJava编译器(javac)标志?   安卓将字符串转换为java。util。Java 8中的日期