Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 使用正则表达式从每行提取最后一个单词_Python_Regex - Fatal编程技术网

Python 使用正则表达式从每行提取最后一个单词

Python 使用正则表达式从每行提取最后一个单词,python,regex,Python,Regex,我想使用正则表达式提取每行的最后一个单词。大多数最后的话都是这样写的: sfdsa AAAAB3NzaCLkc3M gadsgadsg AAAB3NzaCl/Ezfl DOGJASDPGDS AAAB3Nza/ClBAm+4lj 我已经试过了: lastwords = re.findall(r'\s(\w+)$', content, re.MULTILINE) 您需要尝试一下: \s*([\S]+)$ 说明: \s*零个或多个空白字符 [\S]+后跟一个或多个非空白字符 $后接行尾 这

我想使用正则表达式提取每行的最后一个单词。大多数最后的话都是这样写的:

sfdsa AAAAB3NzaCLkc3M

gadsgadsg AAAB3NzaCl/Ezfl

DOGJASDPGDS AAAB3Nza/ClBAm+4lj

我已经试过了:

lastwords = re.findall(r'\s(\w+)$', content, re.MULTILINE)
您需要尝试一下:

\s*([\S]+)$

说明:

  • \s*
    零个或多个空白字符
  • [\S]+
    后跟一个或多个非空白字符
  • $
    后接行尾
这样,您就可以保证匹配最后出现的空格字符,因为后面不会再出现空格字符

您的正则表达式不起作用的原因是因为
\w+
仅涵盖
A-Za-z0-9

因此,
/
在您的两个示例中不匹配。

您可以发布预期的输出吗?示例中没有空格。它是如何工作的?还有输入行的例子。如果这对你们有效的话,你们可能看起来很抱歉,stackoverflow让我等10分钟,然后我才能接受或投票answer@RizwanM.Tuman为什么在最后一次出现后,后面不再跟空格字符?在像\s*([\s]+)\s*$这样的模式末尾添加\s*有什么错。@ramganesh这是一个棘手的问题。。。我只是跟着,行动想要什么。。。根据他提供的原始正则表达式。。。如果他不这么想的话,我可能会考虑,也可能不会。。。