使用python正则表达式仅获取文本

使用python正则表达式仅获取文本,python,regex,Python,Regex,我怎样才能得到它 美国总统 任命内阁成员, 任命须经参议院批准 批准 从 我开始我的模式,但它停止在“国家”这个词。我也试着把 (A)的第一个括号作为字符串的结尾,但仍然不起作用 import re regex = r'\d{1,}\.\s(\w.+)' 您可以在python中使用此正则表达式: r'(?s)\A\d+\.\s+(.+?)(?=\n\()' 以下是正则表达式的详细信息: (?s):在正则表达式中启用单行模式 \A:开始输入 \d+:匹配1+个数字 \.:匹配一个 \s+

我怎样才能得到它

美国总统 任命内阁成员,
任命须经参议院批准 批准

我开始我的模式,但它停止在“国家”这个词。我也试着把 (A)的第一个括号作为字符串的结尾,但仍然不起作用

import re

regex = r'\d{1,}\.\s(\w.+)'

您可以在python中使用此正则表达式:

r'(?s)\A\d+\.\s+(.+?)(?=\n\()'

以下是正则表达式的详细信息:

  • (?s)
    :在正则表达式中启用单行模式
  • \A
    :开始输入
  • \d+
    :匹配1+个数字
  • \.
    :匹配一个
  • \s+
    :匹配1+个空格
  • (.+?)
    :我们匹配的文本将有1+个字符,包括换行符,在组#1中捕获
  • (?=\n\()
    :向前看以确保匹配具有换行符和向前看的

您可以在python中使用此正则表达式:

r'(?s)\A\d+\.\s+(.+?)(?=\n\()'

以下是正则表达式的详细信息:

  • (?s)
    :在正则表达式中启用单行模式
  • \A
    :开始输入
  • \d+
    :匹配1+个数字
  • \.
    :匹配一个
  • \s+
    :匹配1+个空格
  • (.+?)
    :我们匹配的文本将有1+个字符,包括换行符,在组#1中捕获
  • (?=\n\()
    :向前看以确保匹配具有换行符和向前看的

您没有显示您正在创建regex对象的位置;您正在使用该标志吗?请发布一个包含实际搜索的标签。顺便说一句,
{1,}
相当于
+
?@0x5453我想你在想你没有显示你在哪里创建regex对象;你在使用标志吗?请发布一个包含实际搜索的帖子。顺便说一句,
{1,}
相当于
+
?@0x5453我想你在想谢谢,它起作用了。只是想澄清一下为什么你说启用单线模式有好处?如果你不启用
单线模式
,那么
(.+?)
与新行不匹配出色的解释谢谢,它奏效了。只是想澄清一下为什么你说启用单行模式有好处?如果你不启用
单行模式
,那么
(.+?)
与新行不匹配出色的解释