-1

In my program I'm getting an html notification tag use

   "<script>p(34,'1','hello world');</script>/r/n"

I need now is to get the string "hello world" from above tag and it should be a dynamic process as the length of text varies for every response tag.

4

3 回答 3

2

像这样的东西会起作用。如果消息的这些部分也是动态的,您可能需要调整 fromString 和 toString,但这会让您开始。

NSString *someString = @"<script>p(34,'1','hello world');</script>/r/n";

NSString *fromString = @"<script>p(34,'1','";
NSRange fromRange = [someString rangeOfString:fromString];

NSString *toString = @"');</script>/r/n";
NSRange toRange = [someString rangeOfString:toString];

NSRange range = NSMakeRange(fromRange.location + fromRange.length, toRange.location - (fromRange.location + fromRange.length));
NSString *result = [someString substringWithRange:range];
于 2013-04-24T05:13:40.923 回答
1
NSString * myString = @"<script>p(34,'1','hello world');</script>/r/n";//@" hello(1234)";
NSRange range1 = [myString rangeOfString:@"," options:NSBackwardsSearch];
NSRange range2 = [myString rangeOfString:@"'" options:NSBackwardsSearch];

if ((range1.length == 1) && (range2.length == 1) && (range2.location > range1.location))
{
    NSRange range3;
    range3.location = range1.location+2;
    range3.length = (range2.location - range1.location)-2;
    NSString *subString  = [myString substringWithRange:range3];
    NSLog(@"%@",subString)
}

输出---->你好世界

于 2013-04-24T05:12:01.203 回答
1

请尝试使用这个..我希望这项工作会很好..

NSString *data = @"<script>p(34,'1','hello world');</script>/r/n";

    NSRange divRange = [data rangeOfString:@"','" options:NSCaseInsensitiveSearch];
    if (divRange.location != NSNotFound)
    {
        NSRange endDivRange;

        endDivRange.location = divRange.length + divRange.location;
        endDivRange.length   = [data length] - endDivRange.location;
        endDivRange = [data rangeOfString:@"'" options:NSCaseInsensitiveSearch range:endDivRange];

        if (endDivRange.location != NSNotFound)
        {
            divRange.location += divRange.length;
            divRange.length  = endDivRange.location - divRange.location;

            NSLog(@"SubString  %@",[data substringWithRange:divRange]);
        }
    }
于 2013-04-24T05:16:49.860 回答