首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >从特殊文本开始的参数化图的正则表达式

从特殊文本开始的参数化图的正则表达式
EN

Stack Overflow用户
提问于 2014-02-19 10:01:49
回答 2查看 34关注 0票数 0

我想从使用regex的文本中删除一个以特殊单词开头的段落。假设我们有lorem ipsum文本,我们希望删除第一段( http://en.lipsum.com/feed/html )

我正在使用python,我试过:

代码语言:javascript
运行
复制
t = r"^Lorem ipsum.*\n\n"
text.replace(t,"")

课文没发生什么事。我的问题不是关于python,而是关于与以特定单词开头的段落匹配的regex表达式。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-02-19 10:23:34

这在很大程度上取决于您对“段落”的定义--这是一个由空行分隔的行序列吗?大多数regexp处理工具都是面向行的,它们逐行处理文本,因此它们可能不像您所期望的那样工作。这也适用于Python库,但它提供了解决这一问题的方法--在您的例子中,类似于re的工作应该由re.sub('^Lorem ipsum.*?\n\n', '', text, flags=(re.S | re.M))来完成(注意,text.replace根本不适用于regexp )。

如果文本足够短,这是可行的,但对于长文本,您应该使用一些不同的方法--我自己使用awk,其他人可能建议使用perlpython也可以使用;简单的regexp工具,比如grepsed,可能不在这里。

票数 0
EN

Stack Overflow用户

发布于 2014-02-19 10:17:37

如果你的段落中有行距,你的正则表达式就不能工作(它只对一行段落起作用)。尝试以下正则表达式:^Lorem ipsum[\s\S]*\n\n。请参阅http://regex101.com/r/fF9uZ6

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

https://stackoverflow.com/questions/21877040

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档