python提取字符串中单词_从字符串中提取单词,删除标点符号并在Python中返回带有分隔单词的列表...
这与分裂和标点符号无关;你只关心字母(和数字),只想要一个正则表达式:
import re
def getWords(text)
return re.compile('\w+').findall(text)演示:
>>> re.compile('\w+').findall('Hello world, my name is...James the 2nd!')
['Hello', 'world', 'my', 'name', 'is', 'James', 'the', '2nd']如果您不关心数字,请将\w替换为[A-Za-z]仅用于字母,或将[A-Za-z']替换为包括收缩等。可能有更好的方法将字母非数字字符类(例如带有重音符号的字母)与其他正则表达式包括在内。
我几乎在这里回答了这个问题:Split Strings with Multiple Delimiters?
但是你的问题实际上没有说明:你想把'this is: an example'分成:
['this', 'is', 'an', 'example']
或['this', 'is', 'an', '', 'example']?
我认为这是第一个案例。
[this', 'is', 'an', example'] is what i want. is there a method without importing regex? If we can just replace the non ascii_letters with '', then splitting the string into words in a list, would that work? – James Smith 2 mins ago
正则表达式是最优雅的,但是,你可以这样做如下:
def getWords(text):
"""
Returns a list of words, where a word is defined as a
maximally connected substring of uppercase or lowercase
alphabetic letters, as defined by "a".isalpha()
>>> get_words('Hello world, my name is... Élise!') # works in python3
['Hello', 'world', 'my', 'name', 'is', 'Élise']
"""
return ''.join((c if c.isalnum() else ' ') for c in text).split()或.isalpha()
旁注:您也可以执行以下操作,但需要导入另一个标准库:
from itertools import *
# groupby is generally always overkill and makes for unreadable code
# ... but is fun
def getWords(text):
return [
''.join(chars)
for isWord,chars in
groupby(' My name, is test!', lambda c:c.isalnum())
if isWord
]
如果这是家庭作业,他们可能正在寻找像两状态有限状态机这样的命令式事物,其中状态是“字母的最后一个字符”,如果状态从字母 - >非字母改变,则输出一个字。不要那样做;它不是一个好的编程方式(尽管有时抽象很有用)。
python提取字符串中单词_从字符串中提取单词,删除标点符号并在Python中返回带有分隔单词的列表...相关推荐
- python去除字符串中的单词_从字符串中删除单词列表
看着你问题的其他答案,我注意到他们告诉你如何做你想做的事,但他们没有回答你在最后提出的问题.If the input query is "What is Hello", I get ...
- python以下字符串合法的是_以下字符串合法的是().
[单选题]关于科学和人文的关系,说法不正确的一项是( ) [单选题]下列语句中,___________是不正确的Python语句. [多选题]以下属于人机交互方式的是(). [单选题]下面选项中,__ ...
- java字符串数字统计_对字符串进行简单的字符数字统计 探索java中的List功能
题目: 统计一个字符串中数字和字符串的个数,并分别进行排列,要求 1.数字,字符串可以从键盘获取. 2.储存在list 3.统计数字个数,字符串个数 4.把数字和字符串按从小到大的顺序输出 5.不能使 ...
- python字符串equals方法_判断字符串相等-Equals(上)
本次课程是零基础课程,只要熟悉计算机的基本应用和操作,一般可以完成本次课程学习.本课程深入浅出的介绍了C#语言的基本语法结构.条件选择.循环.异常处理.数组.集合.值类型和应用类型.字符串的常用方法. ...
- 反转字符串java实现_反转字符串的几种实现(Java)
反转字符串的几种实现(Java) 首先第一种是利用Java中的类库对象进行反转 //第一种 使用Java类库的diam实现反转 public String reverse(String str){ S ...
- 去掉字符串首尾逗号_去除字符串首尾空格和特殊字符
去除字符串首尾空格和特殊字符 用户在输入数据时,经常会在无意中输入多余的空格,在有些情况下,字符串中不允许出现空格和特殊字符,此时就需要去除字符串中的空格和特殊字符.在PHP中提供了trim()函数去 ...
- hsweb提取页面查询参数_爬虫入门二-提取信息-正则表达式
Hello,好久没更新了,因为我苦逼的去准备期中考试了,哎,不提了,进入我们今天的正题,提取网页中的信息吧. 上次,我们学会了如何向网站提交一个请求并得到返回的信息. 那么我们如何在这一大串信息中提取 ...
- python斗地主游戏源码_我用tkinter写的一个斗地主练习复盘python程序
python写的斗地主模拟器使用说明,以及python的标准控件库tkinter的使用示例. http://vdisk.weibo.com/s/C5R1f8s9EVq2y 我用python写的一个斗地 ...
- python动态语言双刃性_动态语言的灵活性是把双刃剑:以 Python 语言为例
原标题:动态语言的灵活性是把双刃剑:以 Python 语言为例 本文有些零碎,总题来说,包括两个问题:(1)可变对象(最常见的是list dict)被意外修改的问题,(2)对参数(parameter) ...
最新文章
- 特斯拉再出车祸,两死一伤,这次是Model S
- Django学习--9 Admin
- python实现动态规划求解给定矩阵的和最大的子数组(矩阵中数字正负均存在)
- PMP每日三题(2022年2月14日)
- jaba窗体连接mysql增删改查_知识实现——Java使用jdbc连接MySql数据库,实现增删改查...
- VUE:解决 [Vue warn]: Error in render: “TypeError: item.slice is not a function“ (取部分数据)
- 有人上传你的脸?Facebook新功能立刻就会提醒你
- php自定义函数记录一
- 基于Java的Selenium学习笔记——启动Chrome
- 设计模式-03-结构型模式详解
- pandas如何获取名以及删除列
- 基于耗散性的matlab,基于耗散能的沥青抗老化性能评价方法与流程
- Linux之flash流媒体服务器red5安装
- 霹雳吧啦Wz语义分割学习笔记P11
- jgit git pull_使用JGit API探索Git内部
- 获取图片地址并下载图片
- 2022数模国赛B题无人机第一题第一小问的简单编程
- unity5.0 添加图片纹理
- 元宇宙中国江湖进化录
- 浅谈决策、管理与信息化的关系