- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
要解析的两行字符串是:
00:02.0 VGA compatible controller [0300]: Intel Corporation 82945G/GZ Integrated Graphics Controller [8086:2772] (rev 02)
00:02.1 Display controller [0380]: Intel Corporation 82945G/GZ Integrated Graphics Controller [8086:2776] (rev 02)
获取这些字符串:
(从第一行开始)
(从第二行开始)
现在我的起始代码是:
NSScanner *scn = [NSScanner scannerWithString:strtoparse];
NSString *devtype;
while ([scn isAtEnd] == NO)
{
if( [scn scanUpToCharactersFromSet:[NSCharacterSet whitespaceCharacterSet] intoString:NULL] &&
[scn scanUpToString:@"[" intoString:&devtype]);
}
这不起作用。我什至无法从文档中理解扫描仪。那么有人可以发布工作代码吗?
最佳答案
快速片段:
NSString *theString = @"00:02.0 VGA compatible controller [0300]: Intel Corporation 82945G/GZ Integrated Graphics Controller [8086:2772] (rev 02)\n00:02.1 Display controller [0380]: Intel Corporation 82945G/GZ Integrated Graphics Controller [8086:2776] (rev 02)";
NSScanner *theScanner = [NSScanner scannerWithString:theString];
NSCharacterSet *space = [NSCharacterSet characterSetWithCharactersInString:@" "];
NSCharacterSet *bracket = [NSCharacterSet characterSetWithCharactersInString:@"["];
NSCharacterSet *linebreak = [NSCharacterSet newlineCharacterSet];
NSString *type;
NSString *name;
NSString *number;
while (![theScanner isAtEnd])
{
[theScanner scanUpToCharactersFromSet:space intoString:nil] ;
[theScanner scanUpToCharactersFromSet:bracket intoString:&type];
[theScanner scanUpToCharactersFromSet:space intoString:nil] ;
[theScanner scanUpToCharactersFromSet:bracket intoString:&name];
[theScanner scanUpToCharactersFromSet:space intoString:&number];
[theScanner scanUpToCharactersFromSet:linebreak intoString:nil] ;
NSLog(type);
NSLog(name);
NSLog(number);
}
输出:
VGA compatible controller
Intel Corporation 82945G/GZ Integrated Graphics Controller
[8086:2772]
Display controller
Intel Corporation 82945G/GZ Integrated Graphics Controller
[8086:2776]
关于cocoa - 使用 NSScanner 解析字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6844911/
我有一个 NSScanner 对象,它可以扫描 HTML 文档中的段落标签。扫描仪似乎在找到第一个结果时停止,但我需要数组中的所有结果。 如何改进我的代码以浏览整个文档? - (NSArray *)g
我在 NSTextView 中有以下字符串: Horus avenged his father Osiris 为此分配了两个标签,Horus 和 Osiris。我使用 NSScanner 扫描字符串中
我正在扫描 SVG 路径字符串,并使用 NSScanner 尝试将其分解为多个组件。当它运行时,虽然我得到了组件,但我没有得到“类型” 例如:“m 186.14021,456.15955 3.1971
我是 iOS 开发的新手。我正在尝试解析一个简单的 csv 文件,该文件由大约 10 行以逗号分隔。我正在使用下面的代码,但无法理解为什么 NSScanner 在解析字段(下面代码中的字段)时不会转到
我有一个用户名系统,类似于使用 @ 符号的推特。 我已将其设置为通过键入@username 向用户发送消息。这与 Twitter 中的提及基本相同。 到目前为止,我已经能够检测到@ 符号后面的文本,并
我正在尝试用一个空格替换某些文本中的所有多个空格。这应该是一项非常简单的任务,但是由于某种原因,它返回的结果与预期的不同。我已经阅读了 NSScanner 上的文档,它似乎无法正常工作! NSScan
我正在尝试解析具有如下格式的字符串: *date1: - band1.1 @ venue1.1. - band1.2 @ venue1.2. *date2: - band 2.1 @ venue2.1
我创建了一个 NSScanner 类别方法来显示仪器中的泄漏。 - (BOOL)scanBetweenPrefix:(NSString *)prefix andSuff
我尝试使用 NSScanner 是一个 NSArray 枚举循环。然而这失败了: -[NSXMLElement length]: unrecognized selector sent to insta
我正在尝试获取一篇文章的摘要并将其作为字符串下载。这对于某些文章非常有效,但维基百科网站不一致。因此 NSScanner 经常失败,而它对于其他文章却工作得很好。 这是我的 NSScanner 实现:
我正在使用 NSScanner 来解析以逗号和行分隔的数据。实现起来相当简单,但我遇到了一个非常简单的问题。我想扫描下一行,即使它是空的。我现在遇到的问题是,如果有空行,它将跳过它并读取下一行。然后我
要解析的两行字符串是: 00:02.0 VGA compatible controller [0300]: Intel Corporation 82945G/GZ Integrated Graphic
我需要确定一个字符串 (sourceString) 是否包含另一个字符串 (queryString),如果包含,偏移量是多少。 我猜 NSScanner 可能可以解决这个问题,但我不完全理解文档。 假
我正在使用 NSScanner 扫描字符串并从中提取 double 值。这是我尝试解决问题的沙盒代码 let string = "maxage=1234567890" let scanner2 = N
我一直在尝试使用以下代码过滤字符串: //the String with the original text NSString *unfilteredString = @"( A1 )"; //i
我正在构建一个简单的 HTML 到 NSAttributedString 的转换方法,但出于某种原因,NSScanner 类在找到标记后丢弃了一个空格。例如,如果 html 格式的字符串是 @"Thi
我正在使用 NSScanner 在大型 NSString 中查找单词数组,然后使用 html 标记突出显示它们。基本上我扫描到第一个词并在那个点插入一个标签。问题是 NSScanner 也在寻找单词的
我刚读过 Apple documentation对于 NSScanner。我正在尝试获取此字符串的整数: @"user logged (3 attempts)" 我找不到任何例子,如何在括号内扫描。有
我有一个字符串,可能包含也可能不包含 C++ 注释(多行和单行),并且我需要在能够使用该字符串之前删除这些注释。我当前的想法是使用 NSScanner 来做到这一点 - 找到打开和关闭多行注释的位置并
我有一个看起来像这样的字符串: #chat :hi there 我想将 : 中的所有文本扫描为字符串,因此它的结尾类似于 hi there 我已经尝试过 [[NSScanner scannerWith
我是一名优秀的程序员,十分优秀!