2016-01-07 74 views
-5

查找正則表達式從末尾開始的字符串中的第n個字符是否爲集合{a,e,i,o,u}中的字符。正則表達式,以便從字符串末尾查找第n個字母

如:

n=10; 
String=algorithm 

這是true。由於a是從結尾處開始的第十個字母。

n=5; 
abcdefg; 

它是false。由於c是結束的第五個字母。

如何識別上述模式的正則表達式?

+2

你試過了什麼? –

+4

算法沒有10個字母。沒有什麼是從最後的第十個字符。 – azurefrog

+0

爲什麼它必須是一個正則表達式? – Marvin

回答

1

使用端錨:

[aeiou].{<n-1>}$ 

<n-1>需要與適當的值來代替,當然。在Java中,那將是:

import java.util.regex.Pattern; 
//... 
String patternString = "[aeiou].{" + String.valueOf(n-1) + "}$"; 
Pattern pattern = Pattern.compile(patternString); 
//... 
+0

不需要'String.valueOf',只需要括號:''[aeiou]。{「+(n-1)+」} $「' – Andreas

相關問題