Objective c 目标C解析中间字符的字符串

Objective c 目标C解析中间字符的字符串,objective-c,parsing,nsstring,Objective C,Parsing,Nsstring,这对我来说是个难题。我有一个字符串,看起来像: fanspd<fanspd>3</fanspd> doorinprocess<doorinprocess>0</doorinprocess> timeremaining<timeremaining>0</timeremaining> macaddr<macaddr>60:CB:FB:99:99:C1</macaddr> ipaddr<ipaddr&

这对我来说是个难题。我有一个字符串,看起来像:

fanspd<fanspd>3</fanspd>
doorinprocess<doorinprocess>0</doorinprocess>
timeremaining<timeremaining>0</timeremaining>
macaddr<macaddr>60:CB:FB:99:99:C1</macaddr>
ipaddr<ipaddr>10.0.0.6</ipaddr>
model<model>4.4eWHF</model>
softver: <softver>2.14.2</softver>
interlock1: <interlock1>0</interlock1>
interlock2: <interlock2>0</interlock2>
cfm: <cfm>2200</cfm>
power: <power>120</power>
inside: <house_temp>-99</house_temp>
<DNS1>10.0.0.1</DNS1>
attic: <attic_temp>76</attic_temp>
OA: <oa_temp>-99</oa_temp>
server response: <server_response>Ó£àêEE²ç©þ]kõ «jsÐ</server_response>
DIP Switches: <DIPS>11100</DIPS>
Remote Switch: <switch2>1111</switch2>
Setpoint:<Setpoint>0</Setpoint>
fanspd3
doorinprocess0
剩余时间0
macaddr60:CB:FB:99:99:C1
IPADR10.0.0.6
模型4.4eWHF
软件版本:2.14.2
1:0
2:0
cfm:2200
功率:120
内部:-99
10.0.0.1
阁楼:76
OA:-99
服务器响应:ÓèEEçþ]kõ«jsÐ
DIP开关:11100
遥控开关:1111
设定值:0
字符串包含“/n”,因此我将其拆分为如下所示的相应行

fanspd<fanspd>0</fanspd>
fansdp0
我真正想要的是线中间的字符。在上面的示例中,它将是0

我可以使用正则表达式匹配所有内容,但可以执行以下操作:

(.*)(<[a-z]+>)(.*)(</[a-z]+>)
(.*)()(.*)()
但我想要的是更多的东西,可以排除或去除所有的垃圾,并抓住中间的部分

(!(.*)(!<[a-z]+>))(.*)(!(</[a-z]+>)) 
(!(.*)(!)(.*)(!())
我试过了,但不起作用。我还考虑过做另一个[NSstring componentsSeparatedByString:@](使用<或>“),但这将留下更多的解析工作,我认为应该有一种方法,通过正则表达式或字符串比较或某种类似的方法来解析标签之间的字符

如有任何建议或帮助,将不胜感激

谢谢两件事。
您的正则表达式不转义正斜杠
您的正则表达式对于您要执行的操作来说似乎过于复杂

如果您只需要一个中间字符和正则表达式

试试这个:
(.*)

这里有一个很好的工具可以使用:

见鬼,你甚至可以侥幸逃脱:

(*)关于过于复杂的问题,我同意你的看法。我只是试图将事情分组,以便否定分组。这仍然不能解决问题的核心。我想否定除中间字符以外的所有字符。我编辑了我的问题以反映这一点。@FujiRoyale我很困惑,这正是它的作用。@FujiRoyale注意我的常规表达sion只有一组paranthesis。@FujiRoyale我在我提供的链接中用你的字符串测试了我的正则表达式,它工作得很好。我想你可能不知道正则表达式语言中括号的确切含义。事实上,有了我提供的正则表达式,你甚至不需要按行分割它行,因为每个匹配项无论如何都代表下一行。@FujiRoyale我现在测试了整个字符串,底部的正则表达式应该可以工作。我想知道,如果在标记和标记之间的数据(例如:@“0A:”)之前删除信息,然后使用XML解析器,这似乎与XML有一些相似之处,这不是一个好主意。