私は 'メートル'で私の弦のすべてのmを置き換えたいです。問題は、ユニットシンボルの前のスペースを組み合わせて数字を持つことができるので、正しいパターンを見つけなければならないということです。することができ、どのようRegularExpressionsを使ってパターンに基づいたマッチを置き換えることができますが、その値は保持しますか?
800 m -> [1-9][0-9]*s?Meter
:次のコードで[1-9][0-9]*\\s?m": "[1-9][0-9]*\\s?Meter
:
static let patterns = [
"[1-9][0-9]*\\s?m": "[1-9][0-9]*\\s?Meter"
];
static public func prepareText(input: String) -> String {
var modifiedInput = input;
for pattern in patterns.keys {
let regex = try! NSRegularExpression(pattern: pattern, options: .caseInsensitive);
modifiedInput = regex.stringByReplacingMatches(
in: modifiedInput, options: [], range: NSMakeRange(0, modifiedInput.count),
withTemplate: patterns[pattern]!);
}
return modifiedInput;
}
しかし、今、私は私のパラメータの値も変化してしまうという問題があり、私はすでに次のパターンを試してみました
ユニットシンボルの前に800を置いていますか?
本当に有益な回答ありがとうございます!これは正しい方法です! –