import Foundation
let pattern = #"이름은 ([^이?고]+)이?고.*전화번호는 (\d{2,3}\S\d{3,4}\S\d{4}).*예약할 곳은 ([가-힣]+) 입니다\. 인원 수는 (\d+)명입니다\. 날짜는 (\d{4}-\d{2}-\d{2})"#
let regex = try! NSRegularExpression(pattern: pattern, options: .anchorsMatchLines)
let testString = #"이름은 김철수이고 전화번호는 010-0000:0000, 예약할 곳은 월하마을 입니다. 인원 수는 9명입니다. 날짜는 2019-11-11"#
let stringRange = NSRange(location: 0, length: testString.utf16.count)
let substitutionString = #"\5 \3 \1 외 \4 명 \2"#
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