Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/16.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,我尝试了很多解决方案,但无法让这个正则表达式工作 弦- “流量控制无” 我想排除“流控制”加上空白,只返回右边的任何内容。< /P> < P>如果你真的想要一个纯正则表达式,那么试试这个:(?< P>)如果你真的想要一个纯正则表达式,试试这个:(?< P>使用代码>分裂< /Cl> >如下: my_str = 'Flow Control None' out_str = my_str.split()[-1] # 'None' 或者使用re.findall: import re out_str =

我尝试了很多解决方案,但无法让这个正则表达式工作

弦- “流量控制无”


我想排除“流控制”加上空白,只返回右边的任何内容。< /P> < P>如果你真的想要一个纯正则表达式,那么试试这个:<代码>(?< P>)如果你真的想要一个纯正则表达式,试试这个:<代码>(?< P>使用代码>分裂< /Cl> >如下:

my_str = 'Flow Control None'
out_str = my_str.split()[-1]
# 'None'
或者使用
re.findall

import re
out_str = re.findall(r'^.*\s(\S+)$', my_str)[0]

像这样使用
split

my_str = 'Flow Control None'
out_str = my_str.split()[-1]
# 'None'
或者使用
re.findall

import re
out_str = re.findall(r'^.*\s(\S+)$', my_str)[0]

由于您已使用
#python
#regex
标记了您的问题,因此我将使用这些工具概述一个简单的问题解决方案。此外,其他两个答案并没有真正解决匹配
的“流控制”
前缀的“右边的东西”的确切问题

  • 首先,从导入
    re
    内置模块()开始
  • 重新导入
    
  • 定义要匹配的模式。在这里,我们将匹配
    ^Flow Control
    的“右侧的内容”(
    (?P.+)$
  • pattern=re.compile(r“^Flow Control(?P.+)$”)
    
  • 获取给定字符串的匹配项(例如,
    “流量控制无”
  • suffix=pattern.search(“流控制无”).group(“后缀”)
    打印(后缀)#输出:无
    

    希望这个完整的工作示例也能帮助您

    重新导入
    def get_后缀(文本:str):
    模式=重新编译(r“^Flow Control(?P.+)$”)
    匹配=模式。搜索(文本)
    如果不匹配,则返回matches.group(“后缀”)
    示例=[
    “流量控制无”,
    “流量控制无”,
    “流量控制无”,
    “流量控制”,
    ]
    例如,在示例中:
    后缀=获取后缀(文本=示例)
    如果后缀为:
    打印(f“匹配:{repr(后缀)}”)
    其他:
    打印(f“不匹配:{repr(示例)}”)
    
    既然您已经用
    #python
    #regex
    标记了您的问题,我将使用这些工具概述一个简单的问题解决方案。此外,其他两个答案并没有真正解决匹配
    流控制“
    前缀“右边的东西”的确切问题

  • 首先,从导入
    re
    内置模块()开始
  • 重新导入
    
  • 定义要匹配的模式。在这里,我们将匹配
    ^Flow Control
    的“右侧的内容”(
    (?P.+)$
  • pattern=re.compile(r“^Flow Control(?P.+)$”)
    
  • 获取给定字符串的匹配项(例如,
    “流量控制无”
  • suffix=pattern.search(“流控制无”).group(“后缀”)
    打印(后缀)#输出:无
    

    希望这个完整的工作示例也能帮助您

    重新导入
    def get_后缀(文本:str):
    模式=重新编译(r“^Flow Control(?P.+)$”)
    匹配=模式。搜索(文本)
    如果不匹配,则返回matches.group(“后缀”)
    示例=[
    “流量控制无”,
    “流量控制无”,
    “流量控制无”,
    “流量控制”,
    ]
    例如,在示例中:
    后缀=获取后缀(文本=示例)
    如果后缀为:
    打印(f“匹配:{repr(后缀)}”)
    其他:
    打印(f“不匹配:{repr(示例)}”)
    
    只需匹配
    流量控制(+)
    然后仅提取捕获组。根据您的情况,您还可以使用
    str.replace
    str.index
    。是否可以包含更多示例数据?只需匹配
    流量控制(+)
    然后只提取捕获组。根据您的情况,您也可以使用
    str.replace
    str.index
    。您可以包含更多样本数据吗?谢谢Timur,它工作得很好。这两个选项都很好,谢谢您的时间。谢谢Timur,它工作得很好。这两个选项都很好,谢谢您的time、 非常感谢,它工作得很好。我最终使用了下面发布的更简单的正则表达式解决方案,但是如果它对任何异常值都不起作用,那么您的解决方案,尽管需要更长的时间。我添加了以下内容以使其删除引号和空格。
    xt=f{repr(right)}
    xt=xt.strip('\'')
    xt.strip()
    print(xt)
    非常感谢,它工作得很好。我最终使用了下面发布的更简单的正则表达式解决方案,但如果它对任何异常值都不起作用,那么您的解决方案,尽管需要更长的时间。我添加了以下内容以使其删除引号和空格。
    xt=f“{repr(右)}”
    xt=xt.strip(“\”)
    xt.strip()
    print(xt)