[英]Python Regex : Match a particular string and space or coma before
我对regex相当陌生,对我的示例有些困惑:
我有这样的头衔:
我想做的是匹配标题结尾处的任何HD或(HD),以及前面的“,”或“”。
通常在这里以我的示例为例,我想匹配除“超人”以外的所有内容,并且不匹配最后两个标题中的任何内容。
我正在尝试类似的东西:
[\s,HD|\(HD\))]
但它也匹配所有其他“ H”,“ D”,“”和“”。
有人可以帮忙吗?
您需要在正则表达式中使用行尾标记$
,并使其他字符为可选:
/\s*,?\(?HD\)?$/
对于您的示例,请尝试以下模式:
/(?<=\bSuperman)(\s*,?(?:HD|\(HD\)))/g
说明:
(?<=\bSuperman) # positive lookbehind to assert 'Superman' is behind
\s* # match 0 or more spaces
,? # match literal , 0 or one time
(?:HD|\(HD\)) # the ending could be 'HD' or '(HD)'
如果这是超人之后的一切,那么请使用以下积极的表情:
(?<=Superman).*
如果只是具有或不具有的HD或(HD),则:
(?<=Superman)\s?,?HD|\(HD\)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.