2011-11-08 41 views
5

Tôi đang sử dụng đoạn mã sau để tách một chuỗi:không thể chuyển đổi từ 'string' thành 'char []' cho chia

string sss="125asdasdlkmlkdfknkldj125kdjfngdkjfndkg125ksndkfjdks125"; 

List<String> s = new List<String>(sss.Split("125")); 

Tuy nhiên, tôi nhận được một lỗi thời gian biên dịch:

cannot convert from 'string' to 'char[]'

Cách chính xác để tách chuỗi bằng một chuỗi khác là gì?

+0

Tôi đã tiếp tục và cập nhật mã của bạn để đọc 'sss.Split' thay vì' sss.split', trong đó 60% thời gian là lỗi cú pháp mỗi lần. Vui lòng cho tôi biết nếu điều này không chính xác. – user7116

Trả lời

23

Không có tình trạng quá tải cho String.Split which takes just a string, thay vì sử dụng trận đấu gần nhất tiếp theo:

List<string> s = new List<string>(
    sss.Split(new string[] { "125" }, StringSplitOptions.None); 
+0

Rất hữu ích. Chỉ cần thêm ")" vào cuối. – smoore4

6

Bạn chỉ có thể tạo ra một char []:

List<String> s = new List<String>(sss.split(new char[] {'1', '2', '5'})) 

hoặc

List<String> s = new List<String>(sss.split("125".ToCharArray())); 

Thông tin thêm: http://msdn.microsoft.com/en-us/library/ezftk57x.aspx

+0

OP muốn chia nhỏ trên 125, không phải 1 hoặc 2 hoặc 5 – manojlds

1

Sử dụng một mảng chuỗi:

sss.Split(new[]{"125"},StringSplitOptions.None) 

Hoặc StringSplitOptions.RemoveEmptyEntries nếu bạn không muốn có một chuỗi trống cho trước khi là người đầu tiên 125.

2

Điều đó phụ thuộc vào những gì bạn muốn Hoàn thành. Nếu bạn muốn chia nhỏ tại chuỗi "125", sau đó làm

sss.split(new[]{"125"},StringSplitOptions.RemoveEmptyEntries); //or StringSplitOptions.None 

nếu bạn muốn chia nhỏ tại bất kỳ xảy ra 1, 2 hoặc 5 thì làm

sss.split(new[]{'1','2','5'}); 
0

Hãy thử điều này:

//string = "friend&mom&dad&brother" 
    string.Split('&')[int]; 
//string.Split('&')[0] = "friend"<br> 
//string.Split('&')[1] = "mom"<br> 
//string.Split('&')[2] = "dad"<br> 
//string.Split('&')[3] = "brother"<br> 
+0

Bạn đã thử chạy ứng dụng này chưa? Tôi chỉ cố gắng và có "Quá nhiều ký tự trong chữ" – mickadoo

Các vấn đề liên quan