我想从字符串中删除除电影的标题和年份以外的所有内容
我想保留所有不在括号内的内容:
**Dirty.Work.Wie.deweit.wuerdest.Du.gehen.2018**[.German.AC3.WEBRip]
**Zwei.baerenstarke.Typen.1983**[.DE.EN.DTSHD.MasteDEr.5.1.2160p.HDR10.x265-kellerratte]
**The.Hills.Have.Eyes.1977**[.COMPLETE.UHD.BLURAY-UNTOUCHED]
**Wonder.Woman.1984.2020.**[GERMAN.DUBBED.DL.2160p.HDR.WEB.x265]
**Wonder.Woman.1984**[.GERMAN.]**2020**[.DUBBED.DL.2160p.HDR.WEB.x265]
**2012**[.German.]**2006**[.DL.2160p.UHD.BluRay.HDR.HEVC.Remux]
**Sherlock.Holmes.2009**[.German.DL.]**2022**[.ock.Holmes.UHD.BluRay.2160p.UHD.BluRay.HDR.HEVC.Remux]
预期值:
Dirty.Work.Wie.deweit.wuerdest.Du.gehen.2018
Zwei.baerenstarke.Typen.1983
The.Hills.Have.Eyes.1977
Wonder.Woman.1984 2020
Wonder.Woman.1984 2020
2012 2006
Sherlock.Holmes.2009 2022
这就是我所尝试的:
((?<=\b\d{4}\b)|\b(German|DE)\b.*)
https://regex101.com/r/Z4cRMn/1
有人知道怎么做吗?也许需要一些例子
1条答案
按热度按时间yrefmtwq1#
您可以使用
请参阅regex demo。* 详细数据 *:
\[
-一个[
字符[^\]\[]*
-除[
和]
之外的零个或多个字符]
-一个]
字符|
-或\W*
-零个或多个非字字符\b
-字边界(?:\d{4}|German|DE)
-四位数字或German
或DE
\b
-字边界(?!.*\[[^\]\[]*])
-在当前位置的右侧,不应有.*
-任何零个或多个字符,尽可能多的换行符字符除外\[[^\]\[]*]
-[
,除[
和]
之外的零个或多个字符,然后是]
.*
-行的其余部分。