2015-10-15 51 views
0

我得到一个带有标签的HTML格式化字符串。但“<br>”标签存在一个不稳定的情况。我以随机格式获得“<br>”标签,这会在文本中产生一些额外的空间。那么是否有解决方案来修剪这些多个“<br>”标签?文字HTML中的正则表达式Objective C

例子: -

"some text..... <br>" 
"some text..... <br> <br>" // <-- this cause some extra space. 
"some text..... <br>\n" // <-- this cause some extra space. 
"some text..... <br>\n<br>" // <-- this cause some extra space. 
"some text..... <br><br>\n  <br>" // <-- this cause some extra space. 

因此,在短期,可以有白色的空间,并在其中\n字符多个“<br>”标签。

我需要用单个“<br>”标记替换它。任何人都可以用同样的正则表达式来帮助我吗?

注意: -我不想替换两个"<br>"标记之间的任何其他字符串,除了空格和“\ n”。写至今

码 -

NSMutableString *temp = [[NSMutableString alloc] initWithString:html]; 

      [temp replaceOccurrencesOfString:@"<br><br>" withString:@"<br>" options:0 range:NSMakeRange(0, [temp length])]; 
      [temp replaceOccurrencesOfString:@"<br>\n<br>" withString:@"<br>" options:0 range:NSMakeRange(0, [temp length])]; 
      [temp replaceOccurrencesOfString:@"<br>\n" withString:@"<br>" options:0 range:NSMakeRange(0, [temp length])]; 

它是一个静态的字符串,需要regex它。

+0

一个选项可以得到两个''
标签之间的字符串和修剪与'\ N'和'space'的字符串。如果修剪过的字符串为空,则可以将其完全替换。 – sargeras

回答