KanjiConv // Fix Surrogate-Pair Compatibility Issue with RegEx Function.

This commit is contained in:
ShikiSuen 2022-02-28 14:05:46 +08:00
parent 0b394d97ba
commit ce48f8d33a
1 changed files with 2 additions and 1 deletions

View File

@ -21,10 +21,11 @@ import Cocoa
// Regex // Regex
// String private // String private
private extension String { private extension String {
// Ref: https://stackoverflow.com/a/40993403/4162914 && https://stackoverflow.com/a/71291137/4162914
mutating func regReplace(pattern: String, replaceWith: String = "") { mutating func regReplace(pattern: String, replaceWith: String = "") {
do { do {
let regex = try NSRegularExpression(pattern: pattern, options: .caseInsensitive) let regex = try NSRegularExpression(pattern: pattern, options: .caseInsensitive)
let range = NSRange(location: 0, length: count) let range = NSRange(location: 0, length: self.utf16.count)
self = regex.stringByReplacingMatches(in: self, options: [], range: range, withTemplate: replaceWith) self = regex.stringByReplacingMatches(in: self, options: [], range: range, withTemplate: replaceWith)
} catch { return } } catch { return }
} }