2011-01-19 44 views
4

我有一個包含類似值的字符串:如何檢查字符串中包含的英文只有

string str ="Abhigyan Prakash,Primeshow,NewsPoint,NCP,Inflation,सरकार,राहुल,प्राइम शो,न्यूजप्वाइंट,कमजोर,एनसीपी,अभिज्ञान प्रकाश,Rahul"; 

我用下面的代碼將其轉換爲數組列表:

ArrayList altags = new ArrayList(str.Split(',')); 
現在

我想從數組列表從非英語語言屬於刪除所有這些字符串(在我的情況下這是寫在「印地文」應該被刪除的那些話)

請建議我如何檢查字符串寫入英文(帶數字和符號)或其他語言。

注:我沒有通用列表的問題。我不能把它也。但請告訴我如何檢查該字符串中是否只包含字母+數字+符號 謝謝

+0

什麼是「英語」?只有ASCII字符,沒有口音等? (爲什麼你使用ArrayList,順便說一句,你有什麼理由不能使用泛型集合?) – 2011-01-19 07:39:35

+0

對,祝你好運。 – 2011-01-19 07:40:24

回答

3

如果您需要使用拉丁符號,數字符號和空格來過濾字符串,則可以使用正則表達式。

 var regex = new Regex("[a-zA-Z0-9 ]*"); 
     var result = str.Split(',') 
         .Where(s => regex.Match(s).Value == s) 
         .ToArray(); 
3

根據ascii tables英文單詞(帶數字)的字符應該在48-57(0-9),65- 90(AZ)和97-122(az)

您可能想要添加範圍標點符號和其他導入字符,如é(例如,來自未婚妻)。

相關問題