Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/301.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 使用正则表达式从字符串中捕获if-else条件_Python_Regex - Fatal编程技术网

Python 使用正则表达式从字符串中捕获if-else条件

Python 使用正则表达式从字符串中捕获if-else条件,python,regex,Python,Regex,假设下面是我的输入字符串 IF[Category Name]=="CPU"then'YES'elseif [Category Name]=="RAM" then 'YES' else 'NO'end 使用正则表达式,我希望获得所有if和elseif条件,如下所示 [Category Name]=="CPU"then'YES' [Category Name]=="RAM" then 'YES' 条件 中间可以有任意

假设下面是我的输入字符串

IF[Category Name]=="CPU"then'YES'elseif [Category Name]=="RAM" then 'YES' else 'NO'end
使用正则表达式,我希望获得所有if和elseif条件,如下所示

[Category Name]=="CPU"then'YES'
[Category Name]=="RAM" then 'YES'
条件

  • 中间可以有任意数量的空格
  • 忽略案例

  • 任何类似“=、==、>=、的比较运算符尝试以下模式并提取第一个捕获组的值:

    \b(?:if|else(?:if)?)\b(.*?)(?=\b(else(if)?|end)\b)
    
    注意事项:如果满足以下条件,则其工作:

  • 下列单词中的任何一个都作为一个单词存在于引号中:
    if
    else
    elseif
    、或
    end
  • 没有任何嵌套的if-else语句
  • \b(?:if|else(?:if)?)\b(.*?)(?=\b(else(if)?|end)\b)