- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
["all", "the", "above"] 以下函数似乎有效: re.split('\W+-6ren">
我想从字符串中删除非字母字符并将每个单词转换为列表组件,以便:
"All, the above." -> ["all", "the", "above"]
以下函数似乎有效:
re.split('\W+', str)
但它没有考虑极端情况。
例如:
"The U.S. is where it's nice." -> ["the", "U", "S", "is", "where", "it", "s", "nice"]
我希望删除句点,但不要删除撇号或“U.S.”中的句点
我的想法是创建一个正则表达式,其中空格被分解,但然后删除额外的标点符号:
"I, live at home." -> ["I", "live", "at", "home"] (comma and period removed)
"I J.C. live at home." -> ["I", "J.C.", "live", "at", "home"] (acronym periods not removed but end of sentence period removed)
对于这样的句子,我想做的事情变得足够困难:
"The flying saucer (which was green)." -> ["...", "green"] (ignore ").")
"I J.C., live at home." -> ["I", "J.C.", "..."] (ignore punctuation)
特殊情况(从原始文本文件中检索字符串):
"I love you.<br /> Come home soon!" -> ["..."] (ignore breakpoint and punctuation)
我对 python 比较陌生,创建正则表达式让我感到困惑,所以任何关于如何以这种方式解析字符串的帮助都会非常有帮助!如果这里有第 22 条军规,并且并非所有我想要完成的事情都是可能的,请告诉我。
最佳答案
虽然我知道您具体询问的是正则表达式,但解决您的整体问题的另一个解决方案是使用库来实现此明确目的。例如nltk
。它应该帮助您以合理的方式拆分字符串(将正确的标点符号解析为列表中的单独项目),然后您可以从那里过滤掉它们。
你是对的,极端情况的数量之所以巨大,正是因为人类语言不精确和模糊。使用已经考虑了这些边缘情况的库应该可以帮您省去很多麻烦。
关于在 nltk 中处理原始文本的有用入门书是 here 。对于您的用例来说,最有用的函数似乎是 nltk.word_tokenize
,它传回单词和标点符号分隔的字符串列表。
关于python - 正则表达式从列表中删除非 A-Z a-z 的单词(异常(exception)),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34006169/
本文实例讲述了MySQL学习笔记之数据的增、删、改实现方法。分享给大家供大家参考,具体如下: 1、增加数据 插入代码格式: insert into 表明 [列名…] values (值…)
有时候我们需要扩展一个数组,或者删掉数组的一部分,PHP为扩展和缩小数组提供了一些函数。对于那些希望模仿各种队列实现(FIFO、LIFO)的程序员来说,这些函数可以提供便利。顾名思义,从这些函数的函
作为一个小型的数据存储传递的工具——xml,大家肯定也不陌生,今天就关于xml的一些简单操作做些总结。 这些都是在控制台进行操作的····&m
话不多说,请看代码: ? 1
本文实例讲述了mysql语句实现简单的增、删、改、查操作。分享给大家供大家参考,具体如下: 1、创建db_shop数据库,如果该数据库不存在则创建 ?
使用oracle触发器 实现对某个表的增改删的监控操作,并记录到另一个表中。 代码: 复制代码代码如下: create or replace trigger test_trigge
java连接数据库增、删、改、查工具类 数据库操作工具类,因为各厂家数据库的分页条件不同,目前支持Mysql、Oracle、Postgresql的分页查询 在Postgresql环境测试过了,其他
1、修改数据 复制代码代码如下: DataRow dr =
注册表可以用来进行存储一些程序的信息,例如用户的权限、或者某些值等,可以根据个人需要进行存储和删减。 当前注册表主目录: 引用包 Wesky.Net.OpenTools 1.0.5或
准备工作: 增、删、改、查的方法有很多很多种,这里只展示出常用的几种。 ?
需要5个类: 1.实体类:Person.java 2.抽象类:SQLOperate.java(封装了对数据库的操作) 3.助手类:DBOpenHelper.java(继承SQLiteOpenH
首先是是一个简单的例子,单链表的建立和输出。 程序1.1 复制代码 代码如下: #include<iostream> #include<string> using na
数据库操纵基本流程为: 1、连接数据库服务器 2、选择数据库 3、执行SQL语句 4、处理结果集 5、打印操作信息 其中用到的相关函数有 •resource m
CRUD是Create(创建)、Read(读取)、Update(更新)和Delete(删除)的缩写,它是普通应用程序的缩影。如果您掌握了某框架的CRUD编写,那么意味可以使用该框架创建普通应用程序了
项目结构: 添加页面: &
本文实例讲述了android操作sqlite数据库(增、删、改、查、分页等)及listview显示数据的方法。分享给大家供大家参考,具体如下: 由于刚接触android开发,故此想把学到的基础知识
总括 pandas的索引函数主要有三种: loc 标签索引,行和列的名称 iloc 整型索引(绝对位置索引),绝对意义上的几行几列,起始索引为0 ix 是 iloc 和 loc的合体 at
1. [代码]Mybatis全局配置文件 ? 1
我是一名优秀的程序员,十分优秀!