Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >完全标记化句子,包括标点符号、缩写和连字符单词

完全标记化句子,包括标点符号、缩写和连字符单词
EN

Stack Overflow用户
提问于 2021-02-28 21:32:47
回答 1查看 34关注 0票数 3

我想完全标记化一句话:“半衰期最长的元素是铀-234”教授说。

我想要这个输出:

代码语言:javascript
运行
AI代码解释
复制
['"', 'The', 'element', 'with', 'the', 'longests', 'half-life', 'isn't', 'Uranium-234', '"', 'said', 'the', 'professor', '.']

这里所有的标点符号都是分开的,但是像“is‘t”和“but’t”这样的单词是一个记号。连字符连接的单词也被视为一个标记,这正是我想要的。

目前我正在使用它来标记化它:

代码语言:javascript
运行
AI代码解释
复制
p = re.compile(r"\w+(?:'\w+)?|[^\w\s]")
p.findall(s)

这给出了输出:

代码语言:javascript
运行
AI代码解释
复制
['"', 'The', 'element', 'with', 'the', 'longest', 'half', '-', 'life', 'isn't', 'Uranium', '-', '234', '"', 'said', 'the', 'professor', "."]

这样我就不能将连字符连接的单词标记为一个标记。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-02-28 21:46:21

使用

字符类,并且您忘记了下划线:

代码语言:javascript
运行
AI代码解释
复制
\w+(?:['-]\w+)?|[^\w\s]|_

请参见

证明

..。

解释

代码语言:javascript
运行
AI代码解释
复制
--------------------------------------------------------------------------------
  \w+                      word characters (a-z, A-Z, 0-9, _) (1 or
                           more times (matching the most amount
                           possible))
--------------------------------------------------------------------------------
  (?:                      group, but do not capture (optional
                           (matching the most amount possible)):
--------------------------------------------------------------------------------
    ['-]                     any character of: ''', '-'
--------------------------------------------------------------------------------
    \w+                      word characters (a-z, A-Z, 0-9, _) (1 or
                             more times (matching the most amount
                             possible))
--------------------------------------------------------------------------------
  )?                       end of grouping
--------------------------------------------------------------------------------
 |                        OR
--------------------------------------------------------------------------------
  [^\w\s]                  any character except: word characters (a-
                           z, A-Z, 0-9, _), whitespace (\n, \r, \t,
                           \f, and " ")
--------------------------------------------------------------------------------
 |                        OR
--------------------------------------------------------------------------------
  _                        '_'

Python代码

代码语言:javascript
运行
AI代码解释
复制
import re
regex = r"\w+(?:['-]\w+)?|[^\w\s]|_"
test_str = "\"The element with the longest half-life is Uranium-234\" said the professor."
print(re.findall(regex, test_str))

结果

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66414047

复制
相关文章
HDOJ/HDU 2564 词组缩写(单词缩写)
Problem Description 定义:一个词组中每个单词的首字母的大写组合称为该词组的缩写。 比如,C语言里常用的EOF就是end of file的缩写。
谙忆
2021/01/21
7460
水题 单词缩写
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
喜欢ctrl的cxk
2019/11/08
7820
LeetCode 408. 有效单词缩写
给一个 非空 字符串 s 和一个单词缩写 abbr ,判断这个缩写是否可以是给定单词的缩写。
Michael阿明
2020/07/13
1.1K0
NLP中的预处理:使用Python进行文本归一化
我们在有关词干的文章中讨论了文本归一化。但是,词干并不是文本归一化中最重要(甚至使用)的任务。我们还进行了其他一些归一化技术的研究,例如Tokenization,Sentencizing和Lemmatization。但是,还有其他一些用于执行此重要预处理步骤的小方法,将在本文中进行讨论。
deephub
2020/05/09
2.7K0
NLP中的预处理:使用Python进行文本归一化
翻转句子中单词的顺序
题目:输入一个英文句子,翻转句子中单词的顺序,但单词内字符的顺序不变。句子中单词以空格符隔开。为简单起见,标点符号和普通字母一样处理。 例如输入“I am a student.”,则输出“student. a am I”。 由于本题需要翻转句子,我们先颠倒句子中的所有字符。这时,不但翻转了句子中单词的顺序,而且单词内字符也被翻转了。我们再颠倒每个单词内的字符。由于单词内的字符被翻转两次,因此顺序仍然和输入时的顺序保持一致。 还是以上面的输入为例子。翻转“I am a student.”中所有字符得到“.tn
猿人谷
2018/01/17
1.7K0
LeetCode 2047. 句子中的有效单词数
句子仅由小写字母('a' 到 'z')、数字('0' 到 '9')、连字符('-')、标点符号('!'、'.' 和 ',')以及空格(' ')组成。 每个句子可以根据空格分解成 一个或者多个 token ,这些 token 之间由一个或者多个空格 ’ ’ 分隔。
Michael阿明
2022/01/07
6980
​LeetCode刷题实战527:单词缩写
算法的重要性,我就不多说了吧,想去大厂,就必须要经过基础知识和业务逻辑面试+算法面试。所以,为了提高大家的算法能力,这个公众号后续每天带大家做一道算法题,题目就从LeetCode上面选 !
程序员小猿
2022/03/03
3540
使用有限状态机原理实现英文分词
使用Python开发一个英文句子分词程序,把一段英文句子切分为每一个单词。不能导入任何官方的或者第三方的库,也不能使用字符串的split()方法。
青南
2018/08/31
6720
使用有限状态机原理实现英文分词
NLPer入门指南 | 完美第一步
译者 | Arno 来源 | Analytics Vidhya 概览 想开始学习自然语言处理(NLP)吗?如果是,这是完美的第一步。 学习如何进行标识化(tokenization)[1]——这是为构
磐创AI
2019/07/26
1.5K0
NLPer入门指南 | 完美第一步
使用有限状态机原理实现英文分词
使用Python开发一个英文句子分词程序,把一段英文句子切分为每一个单词。不能导入任何官方的或者第三方的库,也不能使用字符串的split()方法。
青南
2018/08/30
9540
使用有限状态机原理实现英文分词
谷歌最强NLP模型BERT如约开源,12小时GitHub标星破1500,即将支持中文
BERT终于来了!今天,谷歌研究团队终于在GitHub上发布了万众期待的BERT。
磐创AI
2018/12/11
8460
谷歌最强NLP模型BERT如约开源,12小时GitHub标星破1500,即将支持中文
谷歌最强NLP模型BERT如约开源,12小时GitHub标星破1500,即将支持中文
BERT终于来了!今天,谷歌研究团队终于在GitHub上发布了万众期待的BERT。
量子位
2018/12/11
1.3K0
谷歌最强NLP模型BERT如约开源,12小时GitHub标星破1500,即将支持中文
LeetCode 527. 单词缩写(Trie树)
给定一个由n个不重复非空字符串组成的数组,你需要按照以下规则为每个单词生成最小的缩写。
Michael阿明
2021/02/19
6860
Kaggle word2vec NLP 教程 第一部分:写给入门者的词袋
NLP(自然语言处理)是一组用于处理文本问题的技术。这个页面将帮助你从加载和清理IMDB电影评论来起步,然后应用一个简单的词袋模型,来获得令人惊讶的准确预测,评论是点赞还是点踩。
ApacheCN_飞龙
2022/12/02
1.6K0
​LeetCode刷题实战408:有效单词缩写
算法的重要性,我就不多说了吧,想去大厂,就必须要经过基础知识和业务逻辑面试+算法面试。所以,为了提高大家的算法能力,这个公众号后续每天带大家做一道算法题,题目就从LeetCode上面选 !
程序员小猿
2021/10/21
5650
如何优雅地(用TeX)写AI论文
地址 | https://zhuanlan.zhihu.com/p/103519006
zenRRan
2020/02/18
8980
Python中的NLP
自然语言处理(NLP)是数据科学中最有趣的子领域之一,数据科学家越来越期望能够制定涉及利用非结构化文本数据的解决方案。尽管如此,许多应用数据科学家(来自STEM和社会科学背景)都缺乏NLP经验。
February
2018/11/30
4K1
【Python 千题 —— 基础篇】句子单词小写
偶尔用户误输入大写字符串,我们需要将其转换成全小写。编写一个程序,输入一个句子字符串,然后将该字符串的全部字符转换成小写形式。
繁依Fanyi
2023/10/22
1900
英语语法常见缩写常用缩写英文单词五种基本句型
常用缩写 prep = 介词;前置词,preposition的缩写 pron = 代词,pronoun的缩写 n = 名词,noun的缩写 v = 动词,兼指及物动词和不及物动词,verb的缩写 conj = 连接词 ,conjunction的缩写 s = 主语 sc = 主语补语 o = 宾语 oc = 宾语补语 vi = 不及物动词,intransitive verb的缩写 vt = 及物动词,transitive verb的缩写 aux.v = 助动词 ,auxiliary的缩写 a = 形容词,a
zhuanxu
2018/08/23
2.7K0
入门 NLP 前,你必须掌握哪些基础知识?
今年一月开始,我一直在从事一个从非结构化的文本中提取信息的项目。在开始这个项目之前,我对自然语言处理(NLP)领域一无所知。当我刚开始研究这个领域时,我很快就找了一本名为「Python 自然语言处理」的书(图书查阅地址:https://www.nltk.org/book/)。这本书对于我来说过于理论化了,但其中的知识基本是正确的,因此它对我来说仍然是无价的资源。接下来,我发现了 Dipanjan Sarkar 编写的「Python 文本分析」(图书查阅地址:https://www.apress.com/gp/book/9781484243534),并从头到尾通读了此书。这本书真的太棒了,它教会了我入门 NLP 项目所需的所有技术技能。最近,此书的第二版(https://www.apress.com/gp/book/9781484243534)也面世了,对上个版本进行了大量的扩充。
double
2019/08/21
1.8K0
入门 NLP 前,你必须掌握哪些基础知识?

相似问题

如何删除标点符号,但在Java中保留首字母缩写和连字符单词?

110

spaCy -连字符单词的标记化

23

单词标记化NLTK缩写问题

120

将链接添加到每个单词,包括标点符号、缩写和Unicode。

16

Regex:在句子中标记小数、缩写和简短形式的单词。

20
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
社区富文本编辑器全新改版!诚邀体验~
全新交互,全新视觉,新增快捷键、悬浮工具栏、高亮块等功能并同时优化现有功能,全面提升创作效率和体验
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文