Skip to main content
 首页 » 编程设计

python之正则表达式匹配直到给定文本

2024年08月29日41开发

我正在编写一个匹配 fooSVM??! 的正则表达式。我想在这个字符串中匹配 SVM,这意味着我需要从 foo 开始匹配,直到遇到 ? 或 !。请注意,SVM 可以是其他 Unicode 字符。

我尝试了 foo(.*)[?!]* 但似乎没有用。

请您参考如下方法:

假设不能有换行符,这会做到:

foo([^?!]+)[?!] 

并检索第一组。

foo        # Find "f", then "o", then "o", 
(          # begin capture 
    [^?!]  # followed by any character which is not "!" or "?", 
    +      # once or more 
)          # end capture 
[?!]       # followed by either a "!" or a "?"