必赢亚洲手机app下载


苹果电脑Mac苹果电脑屏幕录制软件ScreenFlow软件下充斥?教程?

域外程序员爱用苹果Mac电脑的10不行理由(转)

平等悠悠呢iOS、Mac 开发者开发之翻软件(JFFanYi)

一、JFFanYi:

v0.1.1本更新提示:

  • 添加智能复制选项;
  • 丰富翻译模式切换;
  • 长清空按钮;

1、JFFanYi是一律款款极其简单容易纵的遭遇英译软件,可翻译驼峰格式的英文语句、带有苹果特有前缀的字符串,最重大的是可拿中文词转换成驼峰格式的英文语句,其可一直当艺术名用,其翻译结果默认(可选)复制到粘贴板,可一直贴使用。
2、这里下载JFFanYi.dmg,直接装及公的苹果电脑上,源码可以于自身之Github上下载:JFFanYi源码,编译运行源码前,应先pod install
3、示例:

未遭花翻译译.png

移除NS前缀并展开驼峰语句翻译.png

中文翻译成驼峰格式英文.png

正规着花翻译苹果电脑译.png

不牵动前缀驼峰格式翻译.png

友情提醒:翻译的结果默认复制到粘贴板,直接贴使用即可,无需复制再贴。当然为可收回智能复制!

第二、核心源码:

//移除前缀
+ (NSString *)removeThePrefix:(NSString *)string {
    NSInteger index;
    for (index = 0; index < string.length; index ++) {
        char word = [string characterAtIndex:index];
        while (islower(word)) {
            if (index >= 2) {
                string = [string stringByReplacingCharactersInRange:NSMakeRange(0, index - 1) withString:@""];
            }
            return string;
        }
    }
    return string;
}

//驼峰格式转普通格式
+ (NSString *)humpStringToCommonString:(NSString *)string {
    if ([self isChinese:string]) {
        return string;
    }
    NSString *newString = [self removeThePrefix:string];
    NSMutableArray *newStringArray = [[NSMutableArray alloc] init];
    //遇到大写字母将前一个单词添加到数组中
    NSUInteger oldIndex = 0;
    for (NSUInteger index = 0; index < newString.length; index ++) {
        char word = [newString characterAtIndex:index];
        if (isupper(word)) {
            NSUInteger i = index - oldIndex;
            NSString *word = [newString substringWithRange:NSMakeRange(oldIndex, i)];
            [newStringArray addObject:word];
            oldIndex = index;
        }
    }
    //将最后一个单词添加到数组中
    NSUInteger i = newString.length - oldIndex;
    [newStringArray addObject:[newString substringWithRange:NSMakeRange(oldIndex, i)]];
    //将字符数组转换成字符串,每个单词间添加空格
    newString = [newStringArray componentsJoinedByString:@" "];
    return newString;
}

//普通格式转驼峰格式
+ (NSString *)commonStringToHumpString:(NSString *)string {
    if ([self isChinese:string]) {
        return string;
    }
    //字符串中每个单词首字母大写
    NSString *tempString = [string capitalizedString];
    //分隔成数组
    NSArray *words = [tempString componentsSeparatedByString:@" "];
    //去掉空格
    tempString = [words componentsJoinedByString:@""];
    //转成驼峰格式
    NSMutableString *humpString = [[NSMutableString alloc] initWithString:tempString];
    //首字母小写
    NSString *change = [NSString stringWithFormat:@"%c",[tempString characterAtIndex:0] + 32];
    [humpString replaceCharactersInRange:NSMakeRange(0, 1) withString:change];
    return humpString;
}

//判断是否是全汉字字符串
+ (BOOL)isChinese:(NSString *)string {
    NSString *regex = @"[\u4e00-\u9fa5]+";
    NSPredicate *predicate = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", regex];
    return [predicate evaluateWithObject:string];
}

三、总结:
其一JFFanYi翻译,仅仅是温馨当学Mac开发时突想写的有点物,当然设想的机能极为较这强大,只是近年来可比忙,就先行实现了简要的翻功能,后面来日再完善,代码都开源,有趣味的伙伴也得以长自己之有点作用。当然如果您英文特别好自然用非达标JFFanYi,但若是头抽风了,还是值得一为此之物,代码和机能还很粗略,不希罕不喷!当然为欢迎小伙伴等突出新的效用需求,后期会整理,慢慢加上,谢谢!

相关文章

No Comments, Be The First!
近期评论
    功能
    网站地图xml地图