Stanford NLP 课堂笔记之正则表达式
1.[]表达式的用法
正则表达式可以让我们匹配我们想要的字符串形式,增加了效率,在自然语言处理领域有较大的作用。
| 模式 | 匹配 |
| [Ww]oodchuck | Woodchuck,woodchuck |
| [1234567890] | Any digit |
如上面所用的模式既是正则表达式中的常用语法,在“[]”内部的字母表示可以匹配其中的任一字母,
[A-Z]表示大写字母,[a-z]表示小写字母,[0-9]表示数字,[A-Za-z]表示大写加小写字母,
2.特别字符的用法
| 模式 | 含义 | 匹配 |
| colou?r | 匹配前面表达式0次或1次 | color,colour |
| oo*h! | 匹配前面表达式0至无穷次 | oh!,ooh!,oooh! |
| o+h! | 匹配前面表达式1至无穷次 | oh!,ooh!,oooh! |
| beg.n | 匹配任意字母 | begin,beghn |
| a|b|c | a/b/c | a,b,c |
在正则表达式中还有两个表示位置的符号,分别是"^"和"$",代表开头和结尾。
^[A-Z]匹配首字母大写的字符串,如

.$则表示匹配字符串的最后一个任意字母,演示如下

3.示例
下面是一个我们要匹配出所有的the的过程。

当我们直接用the进行匹配时发现出现了两个错误,一个是没有把大写的The匹配进来(准确率),还有一个是把there中的前三个字母误当成了the(召回率)。
对正则表达式进行修改

这样成功的把所有的the匹配出来了,但是召回率依旧没有提高,继续修改

[^A-Za-z]表示匹配不属于这个合集的字符。
Stanford NLP 课堂笔记之正则表达式的更多相关文章
- Stanford NLP学习笔记1:课程介绍
Stanford NLP课程简介 1. NLP应用例子 问答系统: IBM Watson 信息提取(information extraction) 情感分析 机器翻译 2. NLP应用当前进展 很成熟 ...
- Stanford NLP学习笔记:7. 情感分析(Sentiment)
1. 什么是情感分析(别名:观点提取,主题分析,情感挖掘...) 应用: 1)正面VS负面的影评(影片分类问题) 2)产品/品牌评价: Google产品搜索 3)twitter情感预测股票市场行情/消 ...
- Stanford NLP 学习笔记2:文本处理基础(text processing)
I. 正则表达式(regular expression) 正则表达式是专门处理文本字符串的正式语言(这个是基础中的基础,就不再详细叙述,不了解的可以看这里). ^(在字符前): 负选择,匹配除括号以外 ...
- stanford NLP学习笔记3:最小编辑距离(Minimum Edit Distance)
I. 最小编辑距离的定义 最小编辑距离旨在定义两个字符串之间的相似度(word similarity).定义相似度可以用于拼写纠错,计算生物学上的序列比对,机器翻译,信息提取,语音识别等. 编辑距离就 ...
- Stanford NLP 课程笔记之计算字符串距离
在自然语言处理任务中,有时候需要计算两个字符串之间的相似度,也可以称作是两者之间的距离,用最小编辑距离表示. 最小编辑距离用{Insertion,Deletion,Substitution}这三种操作 ...
- ocp11g培训内部教材_051课堂笔记(047)_SQL
OCP 051课堂笔记 目录 OCP 051课堂笔记... 1 第一章.Oracle命令类别:... 4 第二章.SQL的基本函数... 4 2.1 单行函数与多行函数... 4 2.2 单行函数的几 ...
- 【NLP】干货!Python NLTK结合stanford NLP工具包进行文本处理
干货!详述Python NLTK下如何使用stanford NLP工具包 作者:白宁超 2016年11月6日19:28:43 摘要:NLTK是由宾夕法尼亚大学计算机和信息科学使用python语言实现的 ...
- 九章算法系列(#3 Binary Tree & Divide Conquer)-课堂笔记
前言 第一天的算法都还没有缓过来,直接就进入了第二天的算法学习.前一天一直在整理Binary Search的笔记,也没有提前预习一下,好在Binary Tree算是自己最熟的地方了吧(LeetCode ...
- 九章算法系列(#5 Linked List)-课堂笔记
前言 又是很长时间才回来发一篇博客,前一个月确实因为杂七杂八的事情影响了很多,现在还是到了大火燃眉毛的时候了,也应该开始继续整理一下算法的思路了.Linked List大家应该是特别熟悉不过的了,因为 ...
随机推荐
- setInterval、clearInterval的回调函数,实现函数间调用的先后顺序
定义: var waitUnitil=function (untillCallBack, nextStepCallBack, count) { if (count == null) { count = ...
- [Scikit-learn] 1.1 Generalized Linear Models - Comparing various online solvers
数据集分割 一.Online learning for 手写识别 From: Comparing various online solvers An example showing how diffe ...
- 新maven项目创建JSP出现小红叉报错 javax.servlet.http.HttpServlet not found
展示: 右击项目----build path -----Configure Build Path 进入到窗口 libraries -------add libraries ------ server ...
- 解决Java中的HttpServletResponse中文乱码问题
response.setHeader("Content-type", "textml;charset=UTF-8"); response.setCharacte ...
- swift 第二课 基础知识-2
setter 和getter 的使用--> 适合计算使用 struct Point { var x = 0.0, y=0.0 } struct Size { var width = 0.0, h ...
- 用例建模 Use Case Modeling
用例建模 以您的工程实践项目为例,在理解项目需求的基础上进行用例建模,抽取Abstract use case,画出用例图,并确定每一个用例的范围High level use case,对关键用例进一步 ...
- selenium3关于ddt数据驱动。。
from selenium import webdriver import ddt import time import unittest @ddt.ddt class TestLogin(unitt ...
- MongoDB之源生基础概念与语句测试
此文章,我们拿MySQL和MongoDB做一个简单的理解. MySQL的数据库 => MongoDB数据库 MySQL的表 => MongoDB的Collection MySQL的一行记录 ...
- Redis 根据Key模糊批量查询数据
前言 经常会有这样一种业务逻辑,就是需要根据Redis中Key的规则,模糊查询对应的数据,当数据量少时,利用常规的命令也能满足需求,但是数据量大时,就会导致堵塞,就算是采用不堵塞的函数,如果数据需要显 ...
- information retrieval (CMU 11642)
1. Heap's law. predict the number of new vocabulary. 参考:https://www.youtube.com/watch?v=JDp12gU-vEQ ...