0
我有一個返回頁面標題的方法。標題可以返回包含Episodes信息的字符串,並且不包含情節信息。例如:「朋友可以聊天」和「第12集空心人」我需要對最終字符串使用正則表達式並將其返回。。ruby中有正則表達式的.try
title = row.at("h3")
.try(:children)
.try(:first)
.try(:text)
.try(:strip)
.try(:[], /(Episode \d+ [–-]\s*)(.*)/,2)
這裏我得到空心人作爲標題,因爲它包含情節信息和正則表達式匹配在這裏。 但在第一種情況下,它返回零,因爲「朋友可以聊天」沒有情節信息,因此它將返回無匹配正則表達式。
那麼我該如何有效地返回它。我可以使用像
title = row.at("h3")
.try(:children)
.try(:first)
.try(:text)
.try(:strip)
title = title.try(:[], /(Episode \d+ [–-]\s*)(.*)/,2) \
if title && title.try(:[], /(Episode \d+ [–-]\s*)(.*)/,2)
任何其他方式,我可以有效地返回它。