import Foundation
let pattern = #"^\s+,?\[([A-Za-z0-9]+)\]\s=\s([A-Za-z0-9\@]+),?"#
let regex = try! NSRegularExpression(pattern: pattern, options: .anchorsMatchLines)
let testString = #"""
[UserLoginName] = @UserLoginName,
,[UserExternalId] = @UserExternalId
,[UserName] = @UserName
,[Password] = @Password
,[IsWindowsUser] = @IsWindowsUser
,[Active] = @IsActive
,[MustChangePassword] = @MustChangePassword
,[PasswordExp] = @PasswordExp
,[PasswordModifiedDate] = @PasswordModifiedDate
,[PasswordPolicyName] = @PasswordPolicyName
,[LoginTry] = @LoginTry
,[PermissionsRefreshDate] = @PermissionsRefreshDate
,[FirstName] = @FirstName
,[LastName] = @LastName
,[EmailAddress] = @EmailAddress
,[DefaultStoreId] = @DefaultStoreId
,[EmployeeNumber] = @EmployeeNumber
,[Phone] = @Phone
,[MobilePhone] = @MobilePhone
,[Address1] = @Address1
,[Address2] = @Address2
,[PostalCode] = @PostalCode
,[PostalAddress] = @PostalAddress
,[Title] = @Title
,[Language] = @Language
,[BirthDate] = @BirthDate
,[EmploymentDate] = @EmploymentDate
,[ResignationDate] = @ResignationDate
,[BankaccountNo] = @BankaccountNo
,[SocialSecurityNo] = @SocialSecurityNo
,[Comment] = @Comment
,[Country] = @Country
,[vudGUID] = @VudGUID
,[CreatedByUserId] = @CreatedByUserId
,[ModifiedByUserId] = @ModifiedByUserId
,[CreatedDate] = @CreatedDate
,[ModifiedDate] = @ModifiedDate
,[UseSingleSignOn] = @UseSingleSignOn
,[Salt] = @Salt
,[IsSystemUser] = @IsSystemUser
"""#
let stringRange = NSRange(location: 0, length: testString.utf16.count)
let substitutionString = #"[\1] = ISNULL(\2, [\1]),"#
let result = regex.stringByReplacingMatches(in: testString, range: stringRange, withTemplate: substitutionString)
print(result)
Please keep in mind that these code samples are automatically generated and are not guaranteed to work. If you find any syntax errors, feel free to submit a bug report. For a full regex reference for Swift 5.2, please visit: https://developer.apple.com/documentation/foundation/nsregularexpression