我面临一个问题,因为必须从根本无法预测结构的小字符串中提取程序标题。您可以在下面看到一些模式,并且必须评估每个字符串以查看它是否与这些结构中的任何一个匹配,以使我能够正确获得标题。
我已经购买了 Mastering Regular Expressions,但是我必须完成这项工作的时间不允许我学习这本书并尝试对这个(有趣但特别的)主题进行必要的介绍。
Perharps,在这方面有经验的人可以帮助我了解如何完成这项工作?
Some random Name 2 - Ep.1
=> Some random Name 2
Some random Name - Ep.1
=> Some random Name
Boff another 2 name! - Ep. 228
=> Boff another 2 name!
Another one & the rest - T1 Ep. 2
=>Another one & the rest
T5 - Ep. 2 Another Name
=> Another Name
T3 - Ep. 3 - One More with an Hyfen
=> One More with an Hyfen
Another one this time with a Date - 02/12/2012
=>Another one this time with a Date
10 Aug 2012 - Some Other 2 - Ep. 2
=> Some Other 2
Ep. 93 - Some program name
=> Some Program name
Someother random name - Epis. 1 e 2
=> Someother random name
The Last one with something inside parenthesis (V.O.)
=> The Last one with something inside parenthesis
正如您可能看到的,我想从给定字符串中提取的标题可能包含数字、特殊字符(如 &)和 a-zA-Z 中的字符(我猜就是这样)
复杂的部分出现在必须知道它是否在标题后有一个或多个空格并且后跟一个连字符以及在 Ep 之前是否有零个或多个空格时。(我无法解释,这很复杂。)