2009-07-02 42 views

Trả lời

232

Bạn có thể sử dụng NSString phương pháp dụ substringWithRange: hoặc substringFromIndex:

NSString *str = @"A. rahul VyAs"; 
NSString *newStr = [str substringWithRange:NSMakeRange(3, [str length]-3)]; 

hoặc

NSString *str = @"A. rahul VyAs"; 
NSString *newStr = [str substringFromIndex:3]; 
+2

Tôi đã trả lời gần như ký tự cho ký tự trên chuỗi conFromIndex: một phần, do đó, đã xóa và bỏ phiếu trả lời của bạn vì câu trả lời hoàn chỉnh hơn – Xetius

+0

Cảm ơn bạn. –

+12

Bạn cũng nên kiểm tra xem có ít nhất 3 ký tự trong chuỗi không. –

2

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

char *string=[@"A. rahul VyAs" cStringUsingEncoding:NSUTF8StringEncoding]; 
char *subString=&name[3]; 
NSString *newString=[NSString stringWithCString:subString encoding:NSUTF8StringEncoding]; 
1

Đây là một giải pháp tôi đã thấy đặc biệt để loại bỏ thường xuyên xuất hiện tiền tố và giải quyết câu trả lời er cho câu hỏi Làm cách nào để xóa "A. "?

NSString * name = @"A. rahul VyAs"; 
NSString * prefixToRemove = @"A. "; 
name = [name stringByReplacingOccurrencesOfString:prefixToRemove withString:@""]; 

Mã này sẽ loại bỏ những gì bạn nói với nó để loại bỏ/thay đổi nếu bộ ký tự tồn tại, chẳng hạn như" A. ", ngay cả khi ba ký tự (hoặc nhiều hơn/ít hơn) nằm ở giữa chuỗi.

Nếu bạn muốn loại bỏ rahul, bạn có thể. Đa dạng là bạn chỉ định chính xác những gì bạn muốn xóa hoặc thay đổi, và nếu nó tồn tại ở bất cứ nơi nào trong Chuỗi, nó sẽ bị xóa hoặc thay đổi

Nếu bạn chỉ muốn một số ký tự nhất định được xóa khỏi phần trước của văn bản luôn ngẫu nhiên hoặc không xác định, hãy sử dụng [độ dài chuỗi]

Nếu bạn muốn xóa hoặc thay đổi các ký tự nhất định lặp đi lặp lại r, phương pháp tôi đã sử dụng sẽ cho phép điều đó, tương tự như Wordsearch trên trình chỉnh sửa tài liệu.

+0

Điều này sẽ chỉ hoạt động nếu chuỗi bắt đầu bằng "A." và không chứa "A." ở bất kỳ nơi nào khác. Ví dụ, nó sẽ không hoạt động cho "BlahA. Xin chào" – Fogmeister

+0

Ok, vì vậy tôi muốn xóa ba ký tự đầu tiên khỏi hai chuỗi này ... "Xin chào, thế giới!" Và "Foo Bar". Làm thế nào bạn sẽ làm điều đó với giải pháp của bạn? – Fogmeister

+0

@Fogmeister, đọc bản cập nhật. Vấn đề là, nếu có một bộ ký tự chung hoặc một cái gì đó cụ thể, như câu hỏi được hỏi đã nói 'A. ', bạn có thể xóa mà không cần đếm. Nó chỉ là một gợi ý khác, không cần phải thất vọng :-) –

-1

Nó đơn giản này:

myString = [myString subStringFromIndex:3] 

Vậy là xong.

+5

Đã có câu trả lời được chấp nhận ... – brandonscript

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