标签: nsstring

正则表达式拆分NSString - iOS

在iOS中使用正则表达式拆分字符串

我已经使用循环解决了这个问题,但是想要一个更清晰的答案,我希望一个reg exe大师可以帮助我.

我的原始字符串可能如下所示

NSString *originalString = @"343 a mr smith needs this work";

NSString *originalStringVerTwo = @"345a mr jones needs this work as well";

NSString *originalStringVerThree = @"345 Mrs Someone";
Run Code Online (Sandbox Code Playgroud)

我需要分成3个单独的新字符串:

  • 带有或带有尾随"a"或"b"的数字,删除if之间的空格
  • 人名,也许是资本与否,即史密斯先生或琼斯夫人等
  • 在此之后,零个或多个单词将出现在最终字符串中

例如

  • 123a先生,这里有些话
  • 124 b mrs jones n/p
  • 654 Foo先生
  • 123 Jones n/p
  • 345 n/p

应该导致以下结果

第1行

NSString *one = 123a
NSString *two = mr who
NSString *three = here are some words
Run Code Online (Sandbox Code Playgroud)

第2行

NSString *one = 124b // i want the white space removed between …
Run Code Online (Sandbox Code Playgroud)

regex objective-c nsstring ios

2
推荐指数
1
解决办法
4411
查看次数

简单的iOS从UIAlertView收集字符串

我试图将数据发布到数据库,但问题是我似乎无法从用户获取在UIAlertView中输入的文本.我已经尝试了很多解决方案,例如子视图UITextField,但没有运气.这是我目前的简单配置.如果您需要更多信息,请与我们联系.

- (void)viewDidLoad
{
    [super viewDidLoad];

    //load site in webview
    NSURLRequest *siteRequest = [NSURLRequest requestWithURL:[NSURL URLWithString:@"https://google.com/"]
                                                  cachePolicy:NSURLRequestUseProtocolCachePolicy timeoutInterval:60.0];
                                 [webview loadRequest:siteRequest];


    UIAlertView *alertView = [[UIAlertView alloc] initWithTitle:@"Welcome" message:@"Please enter your email address." delegate:self cancelButtonTitle:@"Submit" otherButtonTitles:@"Skip", nil];
    alertView.alertViewStyle = UIAlertViewStylePlainTextInput;
    UITextField *emailInput = [alertView textFieldAtIndex:0];
    [alertView show];

    emails=emailInput.text;

  //  NSLog(emails);


    phone=@"8675309";

    [super didReceiveMemoryWarning];
    // Dispose of any resources that can be recreated.
}
Run Code Online (Sandbox Code Playgroud)

string iphone nsstring uialertview ios

2
推荐指数
1
解决办法
1099
查看次数

NSStrings之前的'@'实际上是一个重载运算符吗?

在处理NSStrings时,我们总是需要@在字符串的开头包含de .例如:

NSString *string = @"Hello, World!";

string是班级的一个对象NSString.

刚刚超越我的想法,@可能是重载运算符,将C字符串转换为类的对象NSString.

是这样吗?或者它只是我的小说心灵的遐想?

c operator-overloading objective-c c-strings nsstring

2
推荐指数
1
解决办法
129
查看次数

在字符串中添加新行

嗨我正在生成一个字符串,其中包含来自文本字段的文本条目.

NSString * lines = [NSString stringWithFormat:@"%@,%@,%@,%@,%@", [self.crabText text], [self.trawlText text], [self.trapText text], [self.vesselText text], [self.lengthText text]];
Run Code Online (Sandbox Code Playgroud)

当用户选择"生成CSV"UIButton后,我生成上面的字符串,后面是IBAction.但是,我想清除文本字段并将新填充的条目添加到之前的条目之上.但是,由于该函数始终创建"lines"字符串的新实例,因此仅填充当前文本字段条目.

lines = [NSString stringWithFormat: @"%@\n", lines];
Run Code Online (Sandbox Code Playgroud)

我有这个工作,把所有新的字符串放入一个数组但是想知道是否可以使用相同的字符串.一个例子是"1,1,1,1,1""新行""2,2,2,2,2".

nsstring ios

2
推荐指数
1
解决办法
3688
查看次数

在iOS 7上使用drawInRect时,如何修剪文本并添加省略号(...)?

我创建了一个子视图并实现了自定义绘图的drawRect:方法.如何实现类似于UILabel的行为,如果文本太长而无法放入框架中,则会自动添加省略号(...).

这是代码

- (void)drawRect:(CGRect)rect
{
    NSDictionary *attributes = @{NSFontAttributeName : [UIFont systemFontOfSize:16.0f], NSForegroundColorAttributeName : [UIColor blackColor]};
    [self.sampleText drawInRect:CGRectMake(10.0f, 10.0f, self.frame.size.width - 20.0f, self.frame.size.height - 20.0f) withAttributes:attributes];
}
Run Code Online (Sandbox Code Playgroud)

如果sampleText很长,那么它只会被剪裁以适合指定的rect.如何正确添加"..."?

nsstring drawrect ios

2
推荐指数
1
解决办法
1417
查看次数

NSMutableAttributedString不起作用:粗体NSString的一部分

试图加粗NSString的起始部分.使用下面提到的代码.

-(void)setText {

    NSString *strEmail = @"Email: HR_Contact@sre.com";
    NSMutableAttributedString *attributedEmail = [[NSMutableAttributedString alloc]initWithString:strEmail];
    NSString *boldFontName = [[UIFont fontWithName:_fontMyriadBold size:20] fontName];
    NSRange boldedRange = NSMakeRange(0, 5);
    [attributedEmail beginEditing];
    [attributedEmail addAttribute:NSFontAttributeName
                   value:boldFontName
                   range:boldedRange];

    [attributedEmail endEditing];

    lblEmailAddress.attributedText = attributedEmail;
}
Run Code Online (Sandbox Code Playgroud)

它没有任何改变.为什么这样,问题是什么,没有得到任何警告或错误.请指导.提前致谢.

iphone nsstring ios

2
推荐指数
1
解决办法
5596
查看次数

如何在没有密钥的情况下使用NSSortDescriptor

NSSetNSString秒.我想NSSet用方法返回按字母顺序排序的元素数组– sortedArrayUsingDescriptors:.

我已阅读NSSortDescriptor文档,仍然不知道如何为简单NSString对象创建一个.

key应该指定什么?有比使用更好的方法NSSortDescriptor吗?

objective-c nsstring nssortdescriptor nsset

2
推荐指数
1
解决办法
1964
查看次数

将NSNumber转换为16位的十六进制字符串

我必须转换NSNumber为十六进制字符串,如下所示:

return [NSString stringWithFormat:@"%llX", self.unsignedLongLongValue];
Run Code Online (Sandbox Code Playgroud)

不幸的是,这有时会给我一个字符串,就像93728A166D1A287它们应该在哪里093728A166D1A287,这取决于数字.

提示:领先0.


我也尝试过:

return [NSString stringWithFormat:@"%16.llX", self.unsignedLongLongValue];
Run Code Online (Sandbox Code Playgroud)

没有成功.


我可以这样做,但这很糟糕:

- (NSString *)hexValue {
    NSString *hex = [NSString stringWithFormat:@"%llX", self.unsignedLongLongValue];
    NSUInteger digitsLeft = 16 - hex.length;

    if (digitsLeft > 0) {
        NSMutableString *zeros = [[NSMutableString alloc] init];
        for (int i = 0; i < digitsLeft; i++) [zeros appendString:@"0"];
        hex = [zeros stringByAppendingString:hex];
    }

    return hex;
}
Run Code Online (Sandbox Code Playgroud)

所以最后我的问题是,有没有办法强制字符串为16个字符?

iphone macos cocoa objective-c nsstring

2
推荐指数
1
解决办法
3846
查看次数

NSRange,在一个段落中找到一个错误的结果

我写了一个方法来突出显示一个段落NSString中的单词,通过发送一个单词,它完美地工作,直到我遇到这种情况:

当我有这个文字时:

他们的母亲试图在其他地方穿上它们......

当我传递这个词时other,"m other" 这个词正在突出显示,当我走过时,in我得到了"礼服ing".

这是我的代码:

-(void)setTextHighlited :(NSString *)txt{
    NSMutableAttributedString * string = [[NSMutableAttributedString alloc]initWithString:self.textLabel.text];

    for (NSString *word in [self.textLabel.text componentsSeparatedByString:@" "]) {

        if ([word hasPrefix:txt]) {
            NSRange range=[self.textLabel.text rangeOfString:word];
            [string addAttribute:NSForegroundColorAttributeName value:[UIColor blueColor] range:range];
    }
Run Code Online (Sandbox Code Playgroud)

我试过使用rangeOfString:options:包含所有选项,但仍然有同样的问题.

请指教

PS: 这是我的代码的来源

objective-c nsstring nsattributedstring ios nsrange

2
推荐指数
1
解决办法
1342
查看次数

检查NSString是否有平衡分隔符

我的输入(NSString)可以是("text"),{("text")}(“text”){{“text”}}.在所有这些情况下,我必须确保开始分隔符({)获得自己的结束分隔符(}).

例如,{{“text”})应标记为错误.

我正在努力NSScanner实现这一目标,并且还试图反转字符串并比较每个角色寻找相反的情况,但一直遇到一些麻烦.

什么是最好的方法?

这是我尝试过的最新方式:

NSMutableString *reversedString = [NSMutableString string];
NSInteger charIndex = [_expressionTextField.text length];
while (charIndex > 0) {
    charIndex--;
    NSRange subStrRange = NSMakeRange(charIndex, 1);
    [reversedString appendString:[_expressionTextField.text substringWithRange:subStrRange]];
}

NSString *mystring = _expressionTextField.text;

NSLog(@"%@", reversedString);
for (int i = 0; i < reversedString.length; i++) {
    if ([mystring characterAtIndex:i] == [reversedString characterAtIndex:(reversedString.length -i)]) {
        NSLog(@"Closed the bracket");
    }
}
Run Code Online (Sandbox Code Playgroud)

string cocoa parsing objective-c nsstring

2
推荐指数
1
解决办法
672
查看次数