2012-11-27 81 views
-1

我可以從Web應用程序本身過濾數據,但是沒有辦法從根處理這個問題?有沒有辦法從根目錄過濾數據?

例如,過濾電話號碼:+(12)345 678 91 /011

通過Web的應用程序,正則表達式我目前在做:

bool validPhoneNumber = Common.IsValidTelephoneNumber(this.PhoneNumber); 

//Insert Regular Expression 
Regex regex = new Regex(@"^((\((\+|00){3}\)|(\()?\d{3}()?|)\d{10})$") 

string number = this.PhoneNumber; 

// Replace unwanted Characters 
number.Replace(" ", ""); 
number.Replace("-", ""); 
number.Replace("(", ""); 
number.Replace(")", ""); 
number.Replace(":", ""); 

Match match = regex.Match(number); 

PhoneNumber (Contact) 
char[] phonenumber = this.phoneNumber.ToCharArray(); 
StringBuilder builder = new StringBuilder(10); 
for (int i = 0; i < phonenumber.Length; i++) 
{ 
    if (phonenumber[i] >= '0' && phonenumber[i] <= '9') 
    { 
     builder.Append(phonenumber[i]); 
    } 
} 
phoneNumber = builder.ToString().Substring(0, Math.Min(10, builder.Length)); 

//OUTPUT: +1234567891 

我想要做的就是收集數據和然後更新它;

using (test.Database.OleDB db = new OleDB(OleDBConn)) { 
    db.Sql = 
     "UPDATE [Contact] SET ([MobileNumber]) VALUES " + "(@mobileNumber)" + 
     "WHERE [Contact_ID] = @contactId"; 

    db.SetSqlParam("mobileNumber", MobileNumber); 

    db.Handle.ExecuteNonQuery(); // Update the Record 
} 
+1

你是什麼意思「從根處理這個」? – J0HN

+0

更新數據庫(輸出)而不是數據庫的輸出。 – Lobato

+0

因此,您的第一種方法是按照用戶提供的方式將手機保存到數據庫中,然後清理數據庫中的輸出,現在您希望在保存到數據庫之前對輸入進行清理和格式化,對吧? – J0HN

回答

0

我已經得出的結論是沒有更早地編輯數據比:

bool validPhoneNumber = Common.IsValidTelephoneNumber(this.PhoneNumber); 

//Insert Regular Expression 
Regex regex = new Regex(@"^((\((\+|00){3}\)|(\()?\d{3}()?|)\d{10})$") 

string number = this.PhoneNumber; 

// Replace unwanted Characters 
number.Replace(" ", ""); 
number.Replace("-", ""); 
number.Replace("(", ""); 
number.Replace(")", ""); 
number.Replace(":", ""); 

Match match = regex.Match(number); 

PhoneNumber (Contact) 
char[] phonenumber = this.phoneNumber.ToCharArray(); 
StringBuilder builder = new StringBuilder(10); 
for (int i = 0; i < phonenumber.Length; i++) 
{ 
    if (phonenumber[i] >= '0' && phonenumber[i] <= '9') 
    { 
     builder.Append(phonenumber[i]); 
    } 
} 
phoneNumber = builder.ToString().Substring(0, Math.Min(10, builder.Length)); 

所以我決定手動更改數據。

相關問題