2017-07-17 19 views
-4

我需要檢查一個字符串的最後一個字是"...abc" or "...xyz" or "...fgh"什麼正則表達式會是合適的?

如何使用正則表達式實現同樣的功能,因爲我試圖學習它?

例如句子1:嗨,我的名字是abc。 句子2:我住在xyz。

上面的句子是一個示例。

+4

你知道如何檢查一個字符串是否是*確切*無論是「ABC」,「XYZ」,或「FGH」與正則表達式? – Ryan

回答

5

你不需要任何正則表達式。只需使用String.EndsWith

string a = "asdasd abc"; 

Console.WriteLine(a.EndsWith("abc.") || a.EndsWith("xyz.") || a.EndsWith("fgh.")); 
+0

如何使用'EndWith()'檢查3種可能性?你需要運行它3次,這是浪費。如果您需要檢查10種可能性,該怎麼辦? –

+0

@RacilHilan不,我不需要跑3次。 '||'將工作,直到第一個「真」。 –

+0

@RacilHilan此外,你認爲你的正則表達式會起作用嗎?它也會檢查3個案例。 –

2

你可以使用這個簡單的正則表達式:

(abc|xyz|fgh)$ 

放在括號通過管道分離之間的可能的選擇。 $表示字符串的結尾。

+0

也會考慮在句子末尾出現標點符號(從OP中不明顯)。 – vasek

+0

@vasek是的,那還不清楚。如果它總是以句號結束,那麼在'$'前面加'\ .'。 –