`
zjjzmw1
  • 浏览: 1352848 次
  • 性别: Icon_minigender_1
  • 来自: 开封
社区版块
存档分类
最新评论

查找string 中>与<之间的字符 string=@"<stu><name>a<b<<<name/>qw<stu/>"

    博客分类:
  • iOS
阅读更多
main.m.


#import <Foundation/Foundation.h>
#import "Str.h"
int main (int argc, const char * argv[])
{

    @autoreleasepool {
       
        NSString *string=[NSString stringWithFormat:@"<stu><name>a<b<<<name/>qw<stu/>"];
//        NSString *string=[NSString stringWithFormat:@"<<张三>>5>3<<<<李四>>233<"];
        for (int i=0; i<string.length+12; i++) {
            string=[Str getString:string];
        }
        NSLog(@"%@",string);
 
    }
    return 0;
}


Str.h


#import <Foundation/Foundation.h>

@interface Str : NSObject
+(NSString *)getString:(NSString *)sender;
@end

Str.m



#import "Str.h"

@implementation Str
+(NSString *)getString:(NSString *)string{
    //查找出>与<之间的字符。
    //<stu><name>a<b<name/><stu/>
    //<<张三>>5>3<<李四>>
   

    NSString *str1;
    NSString *str2;
    NSString *str3;
    NSString *str4;
    NSString *str5;
    int m=0,n=0,k=0;
    //思路是<>之间的都去掉。
    m=(int)[string rangeOfString:@"<"].location;
    n=(int)[string rangeOfString:@">"].location;
    NSLog(@"m==%d==",m);
    NSLog(@"n==%d==",n);
    if (m<0) {
        return string;
    }
    if (n<0) {
        return string;
    }
    if (n<m) {
        n=(int)[[string substringFromIndex:n+1] rangeOfString:@">"].location+3;
    }
    if (n>m) {
        str4=[string substringWithRange:NSMakeRange(m, n-m)];
        str5=[string substringWithRange:NSMakeRange(m+1, n-m)];
        if ([str5 rangeOfString:@"<"].length==0) {
            str1=[string substringToIndex:m];
            NSLog(@"str1===%@",str1);
            NSLog(@"str2===%@",str2);
            str2=[string substringFromIndex:n+1];
        }
        else{
            NSLog(@"k==%d==",k);
            k=(int)[str5 rangeOfString:@"<"].location;
            str1=[string substringToIndex:m+k+1];//往后面去。
            NSLog(@"str1===%@",str1);
            NSLog(@"str2===%@",str2);
            str2=[string substringFromIndex:n+1];
        }
      
        str3=[NSString stringWithFormat:@"%@%@",str1,str2];
        return str3;
    }
    return string;
}
@end
分享到:
评论

相关推荐

    aqw\"" data-report-query="utm_medium=distribute.pc_relevant_iteye_download.none-task-download-2~default~OPENSEARCH~Paid-1-11113592-iteye_blog-1741838.nonecase&depth_1-utm_source=distribute.pc_relevant_iteye_download.none-task-download-2~default~OPENSEARCH~Paid-1-11113592-iteye_blog-1741838.nonecase" data-report-click='{"mod":"popu_708","dest":"https://download.csdn.net/download/weixin_38669628/11113592","strategy":"2~default~OPENSEARCH~Paid","extra":"{\"utm_medium\":\"distribute.pc_relevant_iteye_download.none-task-download-2~default~OPENSEARCH~Paid-1-11113592-iteye_blog-1741838.nonecase\"}"}' > 查找string 中>与<之间的字符 string=@\"<stu><name>a<b<<<name/>qw<stu/>\"

    NULL 博文链接:https://zhangmingwei.iteye.com/blog/1741838

    上下tab浮动菜单

    &lt;li&gt; &lt;a class="menu" href="#nogo"&gt;&lt;b class="snazzy"&gt;&lt;span class="boxcontent red"&gt;item #1&lt;/span&gt; &lt;b class="b4 red"&gt;&lt;/b&gt;&lt;b class="b3 red"&gt;&lt;/b&gt;&lt;b class="b2 red"&gt;&lt;/b&gt;&lt;b class="b1"&gt;&lt;/b&gt; &lt;/b&gt;&lt;/a&gt; &lt;/li&gt; ...

    学生信息管理系统

    &lt;td&gt;&lt;input type="text" name="name"&gt;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;性别&lt;/td&gt; &lt;td&gt;&lt;input type="text" name="sex"&gt;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;年龄&lt;/td&gt; &lt;td&gt;&lt;input type="text" name="age"&gt;&lt;/td&gt; &lt;/tr&gt; &lt;tr&gt; &lt;td&gt;...

    java 学生信息管理

    &lt;td&gt;&lt;a href="updateinformation.jsp"&gt;更改信息 >>&lt;/a&gt;&lt;/td&gt; &lt;/tr&gt; &lt;/table&gt; &lt;p&gt;&nbsp;&nbsp;&nbsp;&nbsp;&lt;a href="login_confirm?action=logout"&gt;&lt;&lt;注销 &lt;/a&gt;&lt;/p&gt; &lt;/body&gt; &lt; html&gt; (3) 修改项学生...

    用asp做的一个网站案例

    &lt;li&gt;&lt;a href="AddStu.asp" class="xxxg"&gt;学生信息修改&lt;/a&gt;&lt;/li&gt; &lt;li&gt;&lt;a href="AddStuScore.asp" class="cjlr STYLE2"&gt;学生成绩录入&lt;/a&gt;&lt;/li&gt; &lt;/ul&gt; &lt;div id="clear"&gt;&lt;/div&gt; &lt;/div&gt; &lt;/div&gt; &lt;/div&gt; ...

    struts2实例 学生信息管理系统

    &lt;result name="success"&gt;list.jsp&lt;/result&gt; &lt;/action&gt; &lt;action name="delete" class="cn.fjnu.edu.action.AddAction" method="deletestu"&gt; &lt;result name="success"&gt;list.jsp&lt;/result&gt; &lt;/action&gt; &lt;action name=...

    雅虎TAB效果代码 Javascript实现

    --[if lte IE 6]&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;&lt;/a&gt;&lt;![endif]--&gt; &lt;/li&gt; &lt;/ul&gt; &lt;br class="clear" /&gt; &lt;ul&gt; &lt;li&gt;&lt;a href="#nogo" class="four outer"&gt;SEARCH&lt;!--[if IE 7]&gt;&lt;!--&gt;&lt;/a&gt;&lt;!--&lt;![endif]--&gt; &lt;!--[if lte IE 6]&gt;&lt;table&gt;...

    xml入门教程/xml入门教程

    &lt;student:name&gt;stu1&lt;/student:name&gt; &lt;student:sex&gt;girl&lt;/student:sex&gt; &lt;/teacher:student&gt; &lt;/teacher:teacher&gt; (2)用名域限定属性 &lt;?xml version="1.0" encoding="UTF-8" standalone="yes"?&gt; &lt;teacher:...

    freemarker总结

    [ {“Akey”:”Avalue”},{“Akey1”:”Avalue1”}, {“Bkey”:”Bvalue”},{“Bkey1”:”Bvalue1”}, ] hashes {“you”:”a”,”me”:”b”,”he”:”c”} 注释标志 &lt;#-- 这里是注释 --&gt; 旧版本的freemarker...

    php添加数据到xml文件的简单例子

    &lt;name&gt;张三&lt;/name&gt; &lt;yuwen&gt;80&lt;/yuwen&gt; &lt;shuxue&gt;90&lt;/shuxue&gt; &lt;yingyu&gt;70&lt;/yingyu&gt; &lt;/xuesheng&gt; &lt;xuesheng&gt; &lt;name&gt;李四&lt;/name&gt; &lt;yuwen&gt;60&lt;/yuwen&gt; &lt;shuxue&gt;90&lt;/shuxue&gt; &lt;yingyu&gt;75&lt;/yingyu&gt; &lt;/xuesheng&gt; &lt;/...

    MyBatis更新数据.txt

    添加映射—— &lt;?xml version="1.0" encoding="UTF-8" ?&gt; &lt;!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" ... update stu_tbl set name=#{name}, age=#{age} where id=#{id} &lt;/update&gt; &lt;/mapper&gt;

    Java测试题1答案

    &lt;br&gt;class Myclass{}&lt;br&gt;3)/* This is a comment */&lt;br&gt;package Mypackage;&lt;br&gt;import java.awt.*;&lt;br&gt;class Mycalss{}&lt;br&gt;17. 编译和执行下例代码会输出什么?&lt;br&gt;public class Q &lt;br&gt;public static void main...

    java服务器交互框架

    public Stu getName(String a,int b,Stu su); } 2 服务端实现接口 @Service("IExampleImpl") // 实现接口的类名 接口名+Impl @Invoke //ps:此注解是标识..无此注解将不能调用的类 public class IExampleImpl...

    ik对应的7.x分词器

    2、在managed-schema(在server/solr/stu/conf目录下,这里选的自定义core即stu)文件中添加新分词器 &lt;fieldType name="text_hmm_chinese" class="solr.TextField" positionIncrementGap="100"&gt; &lt;analyzer type=...

    MyBatis插入数据.txt

    添加映射—— &lt;?xml version="1.0" encoding="UTF-8" ?&gt; &lt;!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" ... insert into stu_tbl(name,age) values(#{name},#{age}) &lt;/insert&gt; &lt;/mapper&gt;

    校园信息管理系弘之模板法

    cout&lt;&lt;"出生日期:"&lt;&lt;year&lt;&lt;"-"&lt;&lt;month&lt;&lt;"-"&lt;&lt;data&lt;&lt;endl; } void person::read() //输入person { cout&lt;&lt;"姓名:"&lt;&lt;endl; cin&gt;&gt;name; cout&lt;&lt;endl; cout&lt;&lt; "性别:"&lt;&lt;endl; cin&gt;&gt;sex; cout&lt;&lt;endl; cout&lt;&lt;"地址:...

    MyBatis删除数据.txt

    添加映射—— &lt;?xml version="1.0" encoding="UTF-8" ?&gt; &lt;!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"&gt; &lt;mapper namespace=...&lt;/mapper&gt;

    MyBatis参数处理.docx

    使用Map 映射文件 ... &lt;select id="selectStudentByNameAndAge" resultType="Student" parameterType="map"&gt; select * from stu_tbl where name = #{name} and age = #{age} &lt;/select&gt; &lt;/mapper&gt;

    VC++入门教程、编程-----深入详解一.doc

    #include &lt;string.h&gt; #include &lt;iostream.h&gt; //类的说明部分 class student //定义类(class) student { private: //私有部分 public: //公共部分 long num; //学号 char name[20]; //姓名 char sex[10]; //性别...

    PDF精华

    &lt;br&gt;http://www.cnblogs.com/ghd258/articles/257711.html&lt;br&gt;&lt;br&gt;精典浮动网页&lt;br&gt;http://www.menllo.com/11296/favorite&lt;br&gt;&lt;br&gt;获得PDF页数&lt;br&gt;http://topic.csdn.net/t/20061211/14/5221920.html&lt;br&gt;&lt;br&gt;读取PDF...

Global site tag (gtag.js) - Google Analytics