如何将英文句子分词(拆分单词), 并判断分词是否为英文单词
在工作中用到将英文句子分词, 然后判断每个分词是否为英文单词,现记录如下:
句子拆分有两种方法,产生的结果各有不同
1. 拆分句子
1.1 TweetTokenizer 保证标签完整性
1.2 word_tokenize 将所有标签拆分
from nltk import word_tokenize
from nltk.tokenize import TweetTokenizer
tt = TweetTokenizer(True,False,True)
tweet = "This is a cooool #dummysmiley: :-) :-P <3 and some arrows < > -> <-- @remy: This is waaaaayyyy too much for you!!!!!!"
tweet_tokenizer = tt.tokenize(tweet)
word = word_tokenize(tweet)
print(tweet_tokenizer)
print(word)
结果如下:
['This', 'is', 'a', 'cooool', '#dummysmiley', ':', ':-)', ':-P', '<3', 'and', 'some', 'arrows', '<', '>', '->', '<--', ':', 'This', 'is', 'waaaaayyyy', 'too', 'much', 'for', 'you', '!', '!', '!']
['This', 'is', 'a', 'cooool', '#', 'dummysmiley', ':', ':', '-', ')', ':', '-P', '<', '3', 'and', 'some', 'arrows', '<', '>', '-', '>', '<', '--', '@', 'remy', ':', 'This', 'is', 'waaaaayyyy', 'too', 'much', 'for', 'you', '!', '!', '!', '!', '!', '!']
2. 判断是否为英文单词
这里用到了 enchant
(pip install pyenchant
)
先将句子拆分为单个词, 再判断每个词是否为英文单词, 最后生成一个由tuple组成的list
import enchant
from nltk.tokenize import TweetTokenizer
tweet = "This is a cooool #dummysmiley: :-) :-P <3 and some arrows < > -> <-- @remy: This is waaaaayyyy too much for you!!!!!!"
chant = enchant.Dict("en_US")
tt = TweetTokenizer(True,False,True)
tweet_tokenizer = tt.tokenize(tweet)
lst = [(value,chant.check(value)) for value in tweet_tokenizer] # 判断每个分词是否为英文
print(lst)
结果如下:
[('This', True), ('is', True), ('a', True), ('cooool', False), ('#dummysmiley', False), (':', False), (':-)', False), (':-P', False), ('<3', False), ('and', True), ('some', True), ('arrows', True), ('<', False), ('>', False), ('->', False), ('<--', False), (':', False), ('This', True), ('is', True), ('waaaaayyyy', False), ('too', True), ('much', True), ('for', True), ('you', True), ('!', False), ('!', False), ('!', False)]
如何将英文句子分词(拆分单词), 并判断分词是否为英文单词相关推荐
- java句子倒序_Java实现英文句子中的单词顺序逆序输出的方法
摘要:这篇Java开发技术栏目下的"Java实现英文句子中的单词顺序逆序输出的方法",介绍的技术点是"逆序输出.单词顺序.英文句子.Java.实现.方法",希望 ...
- C语言反序输出英文句子,C++实现英文句子中的单词逆序输出的方法
本文实例讲述了C++实现英文句子中的单词逆序输出的方法.分享给大家供大家参考,具体如下: #include "stdafx.h" #include #include #includ ...
- 【简单】求英文句子的平均单词长度
[简单]求英文句子的平均单词长度 题目描述 输入示例 输出示例 初始代码 解题思路 解题代码 札记 本文章属于付费专栏的文章,购买该文章所隶属的专栏后,即可获得本专栏内的所有文章永久阅读权限.每一篇文 ...
- python输入一个英文句子、统计单词个数_C语言编程求一个英文句子中的单词数和最长单词的位置、长度及输出这个单词。c++编程 从键盘输入一个英文...
C语言编程求一个英文句子中的单词数和最长单词的位置.长度及输出这个单词. c++编程 从键盘输入一个英文 www.zhiqu.org 时间: 2020-11-23 我刚做了一关于英文句子里面每 ...
- 统计英文句子中的单词个数,并且输出每个单词
package new_test; import java.util.Scanner; import java.util.StringTokenizer; //任务:统计英文句子中的单词个数,并且输出 ...
- 【python 字母索引】找到英文句子里面每个单词最后一个字母的索引
# -*- coding:utf-8 -*- sentence="wo ai ni zhong guo"def find_english_word_last_index(sente ...
- java将英文句子分解为单词,Java如何将文本或句子分解为单词?
起初,它看起来很简单.我们可以使用来分割文本String.split(),使用空格来分割单词.但是,如果单词以问号(?)或感叹号(!)结尾,该怎么办?我们可能还需要注意其他一些规则. 使用java.t ...
- C++实现一句英文句子中的单词逆置
比如,输入I am a student. 输出 student. a am I 思路: 1. 先将这个字符串整体倒置, 2. 再将单个单词倒置. #include <iostream> u ...
- 剑指Offer——翻转英文句子中的单词顺序
主要思路: 先交换整个句子的顺序,再交换每个单词的顺序. 一下代码在VS2015中调试无误 #include "stdafx.h" #include<iostream> ...
- C语言编程:输入一行英文句子,统计单词数(个人注解)
#include <stdio.h> #include <stdlib.h>int main() {char ch;int sum = 0,word = 0;//用word来判 ...
最新文章
- Java TreeMap 和 TreeSet 源码解析
- python3下载文件-Python3学习笔记(十八):文件上传和下载
- SAP CRM WebClient UI点了产品主数据搜索结果超链接后的跳转调试
- logstash 过虑nginx访问日志
- 基于jsp+mysql+Spring+hibernate+的SSH在线学习交流论坛平台
- Android 4 学习(20):ActionBar
- 访谈编码怎么做_怎么才能让口才得到提升
- NYMEX ACCESS电子交易系统来
- 配置centos防火墙(iptables)开放80端口
- Checkbox与RadioGroup的使用方法
- Centos5安装Dell OpenManage Server Administrator
- C语言相反次序重新排序
- Microsoft Expression blend 3 新功能简介
- mysql 按字段排序
- 用代码来模拟铁路售票系统,实现通过四个售票点发售某日某次列车的100张车票,一个售票点用一个线程表示
- 实用主义学python_麻瓜编程《实用主义学Python》课程全集下载地址 – 爱学知识网...
- LeaRun.Java可视化拖拽编辑的BI大屏
- PostgreSQL 删除表格
- cocos creator 广告控制脚本
- SSL证书怎么部署,SSL证书需要怎么安装你知道吗?
热门文章
- samsung q1u android,奢华配置指纹科技 三星Q1U再造UMPC王者
- 钉钉日志范文100篇_钉钉日志,让领导看得见你的工作
- HTML5期末大作业:网上鲜花网站设计——网上鲜花网页设计(5页)HTML+CSS+JavaScript web期末作业设计网页
- mysql有rac吗_RAC
- PhysX碰撞检测之onContact和onTrigger
- 如何解决vue项目本地ip地址无法访问项目问题?【亲测有效】
- android沉浸式状态理解
- 数据库实验3 表、ER图、索引和视图的基础操作
- 淼淼Kruskal算法
- 不积跬步无以至千里008