comment faire pour supprimer les Balises HTML de NSString dans l'iphone?
Je travaille fonctionnalité de Calendrier pour mon application exigence.SI je clique sur la date du jour ou du lendemain de la date ou à une autre date besoin de bon augure pour afficher les détails dans UITextview
.J'ai essayé de formater une chaîne de caractères dans le texte que j'ai vue, mais je ne peux pas travailler. Im très nouveau pour xcode.Je veux supprimer HTML
Balises dans mon stringResonse et de les afficher dans UITextview
.
Je suis en train d'écrire comme ça dans mon code:
-(void)connectionDidFinishLoading:(NSURLConnection *)connection
{
[UIApplication sharedApplication].networkActivityIndicatorVisible=NO;
if(connection==urlConnection)
{
NSString *strResponse=[[NSString alloc]initWithData:responseData encoding:NSUTF8StringEncoding];
NSLog(@"String Response is : %@",strResponse);
NSMutableString *mutString=[NSMutableString string];
NSString *s=nil;
NSString *s1=nil;
//NSArray *arr1=[strResponse componentsSeparatedByCharactersInSet:[NSCharacterSet characterSetWithCharactersInString:@"<br>"]];
NSArray *arr2=[strResponse componentsSeparatedByString:@"\n"];
NSLog(@"array %@",arr2);
for(s in arr2)
{
s = [s stringByReplacingOccurrencesOfString: @"<br>" withString: @"\n"];
s1=[s stringByReplacingOccurrencesOfString:@"<font color>" withString:@" "];
[mutString appendString:@""];
[mutString appendString:s1];
}
text1.text=[text1.text stringByAppendingString:mutString];
}
}
- (void)viewDidLoad
{
[super viewDidLoad];
//Do any additional setup after loading the view.
strZone=[[NSString alloc]init];
dict=[[NSDictionary alloc]init];
text1=[[UITextView alloc]initWithFrame:CGRectMake(10, 280, 300, 120)];
text1.font=[UIFont fontWithName:@"Helvetica" size:12];
text1.font=[UIFont boldSystemFontOfSize:12];
text1.backgroundColor=[UIColor whiteColor];
text1.editable=NO;
[self.view addSubview:text1];
}
C'est ma chaîne de Réponse.
S.Panchami 01.38<br>Arudra 02.01<br>V.08.54-10.39<br>D.05.02-06.52<br> <font color=red><u>Festival</u></font><br><font color=blue>Shankara Jayanthi<br></font>
Mais je veux afficher comme ceci si l'utilisateur clique sur une date dans le calendrier
S. Panchami 01.38
Arudra 02.01
V. 08.54-10.39
D. 05.02-06.52
Festival
Shankara Jayanthi
- salut les gars c'est ma chaîne de réponse: S. Panchami 01.38<br>Arudra 02.01<br>V. 08.54-10.39<br>D. 05.02-06.52<br> <font color=red><u>Festival</u></font><br><font color=blue>Shankara Jayanthi<br></font> ..
- S'il vous plaît ajouter votre commentaire à votre question en utilisant le lien modifier et tout en s'il vous plaît format vous correctement à la question.
- j'ai déjà ajouter mon commentaire dans ma question.Mais il est d'obtenir le format normal.donc c'est pourquoi je suis ajouter à ma chaîne réponse en commentaire..
- Si vous voulez le mettre au format html puis utiliser les extraits de code, comme quelqu'un l'a déjà fait pour vous avec le reste de votre code
Vous devez vous connecter pour publier un commentaire.
Une solution simple avec iOS 7:
NSHTMLTextDocumentType
a été introduit dans iOS7. Mais puisque vous n'avez pas mentionner ce que la version d'iOS que vous êtes mieux les cibler, et depuis, il pourrait peut-être aider d'autres utilisateurs (en l'avenir, iOS7), je pense qu'il mérite une réponse.Si votre travail avec ios 7, alors vous pouvez appliquer ce code
pour ios inférieur à ios 7 utiliser ce code,
Cela devrait supprimer tout le contenu entre
< >
Une option à l'expression régulière est d'utiliser
NSScanner
:Je vous suggérons d'utiliser un
UIWebView
. Si vous utilisez unUITextView
, d'abord, vous devez enlever les balises HTML et ensuite insérer un caractère de saut de ligne\n
pour des raisons de formatage. Il serait beaucoup plus facile pour envelopper votre chaîne de réponse avec format HTML simple comme<html><head/><body><your string response><body/></html>
et l'afficher dans unUIWebView
.