Reputation: 351
I am searching for all hardcoded strings in my app so I can localize them. Currently I am using the regular express search for @"[^"]+" as suggested in this answer: Searching hard coded text in xcode
The issue is I want to only find some strings in this format. For example, I want to exclude [UIImage imageNamed:@"string"] and NSLog(@"Log string"). I believe the easiest way to do this is find a string of the format of @"[^"]+" as long as the prior characters do not include NSLog(, or imageNamed:, or several other things I will enter in manually.
How can I write a regex that excludes these cases?
Upvotes: 10
Views: 5144
Reputation: 925
I think this would be more comprehensive
"[a-zA-Z0-9 ?!.,;/\-=+)(*&%#@]+"
Search > Find > Regular Expression -- type
Upvotes: 4
Reputation: 3906
For Swift project
In Xcode > Search > Find > Regular Expression -- type "[a-zA-Z0-9]+"
Upvotes: 4
Reputation: 795
You can use a negative lookbehind to exclude those cases:
(?<!(imageNamed:|NSLog\())@"[^"]+"
Upvotes: 12