我遇到了一個問題,我需要查看提供的字符串是否包含中間3個字符,因爲我正在尋找。正則表達式來檢查中間3個字符
對於如。我們將總是得到9個字符串,其中,中間3個字符我想與例如「abc」比較。如果條件匹配,那麼我想申請一些邏輯。任何人都可以爲我舉個例子嗎?
在此先感謝
我遇到了一個問題,我需要查看提供的字符串是否包含中間3個字符,因爲我正在尋找。正則表達式來檢查中間3個字符
對於如。我們將總是得到9個字符串,其中,中間3個字符我想與例如「abc」比較。如果條件匹配,那麼我想申請一些邏輯。任何人都可以爲我舉個例子嗎?
在此先感謝
我猜這就是你想要的
^.{3}abc.{3}$
非常感謝Anirudha,這就是我一直在尋找的東西。 – user509755
這是否適用於shell腳本。如果我嘗試像這樣 – user509755
if [「$ 1」== ^。{3} abc。{3} $]; 然後 \t回聲「條件確實匹配!!!」 其他 \t回聲「條件不匹配」 網絡 – user509755
這可能使得使用起來更感substring
和equals
:
if(s.substring(3, 6).equals("abc"))
// ...
但如果你真的想要一個正則表達式,你可以寫:
if(Pattern.compile("...abc...", Pattern.DOTALL).matcher(s).matches())
// ...
^.*abc.*$
您也可以使用像,^.{3}abc.{3}$
只有中間的三個字符相匹配。
int mid = (test.length()/2);
string = string.substring(mid-1, mid+2);
if (string.equals("abc"))
{
do stuff
}
這是一個使用子字符串獲取中間三個字符的示例。您可能需要添加一個檢查,以防字符串長度小於3個字符以防止出現錯誤。將abc更改爲任何您想要檢查的內容。
在你的情況下,substring聽起來更直截了當。 – assylias
字符串的長度是否固定?子串的中間位置在哪裏? – JustinKSU
... abc ...例如 – Eduardo