I am trying to do IFSCCode validation in swift, but the problem I'm facing is I am not able to fetch the first four letters in string.
IFSC Code example:
ABCD0200000
This is how an IFSC Code looks:
I have written code for ifs code validation in Objective C, but I am not that familiar in Swift so getting a problem in replicating the same in Swift.
The following is the code which I have written in Objective C:
- (BOOL)validateIFSCCode:(NSString*)ifsccode { if (ifsccode.length < 4) { return FALSE; } for (int i = 0; i < 4; i++) { if (![[NSCharacterSet letterCharacterSet] characterIsMember:[ifsccode characterAtIndex:i]]) { return FALSE; } } if (ifsccode.length < 10) { return FALSE; } if ([ifsccode characterAtIndex:4] != '0') { return FALSE; } else { return TRUE; } }
In Swift 3
func validateIfscCode(_ ifscCode : String) -> Bool{ if(ifscCode.characters.count < 4){ return false; } for( _ in 0 ..< 4){ let charEntered = (ifscCode as NSString).character(at: i) } if(ifscCode.characters.count < 10){ return false; } let idx = ifscCode[ifscCode.index(ifscCode.startIndex, offsetBy: 4)] print("idx:%d",idx) if (idx == "0"){ } return true }
In Swift, the first property is used to return the first character of a string.
In swift 4, the substring method has been deprecated and now we can use the suffix method of strings, which allow us to get the last few characters of any string.
You can get a substring from a string by using subscripts or a number of other methods (for example, prefix , suffix , split ). You still need to use String. Index and not an Int index for the range, though. (See my other answer if you need help with that.)
To split a string to an array in Swift by a character, use the String. split(separator:) function. However, this requires that the separator is a singular character, not a string.
The easiest way to get a string's prefix is with
// Swift 3 String(string.characters.prefix(4)) // Swift 4 and up string.prefix(4) // Objective-C NSString *firstFour = [string substringToIndex:4];
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With