前提・実現したいこと
TextViewの選択範囲の文字列を指定の文字列に置換したい
例えば以下のような文字列がテキストフィールドに存在し、1〜4の範囲(XXXの部分)を選択している状態の時に指定の文字列に置換する方法を知りたいです。
"AXXXEFG"
発生している問題・エラーメッセージ
選択範囲の最初のインデックスと最後のインデックスはtextView.selectedRange.location/lengthで取得できたので以下のようなメソッドで範囲指定して置き換えようかと思いましたがエラーが出てしまいます。
textView.text.replaceSubrange(textView.text.index(textView.text.startIndex, offsetBy: textView.selectedRange.length), with: "BCD")//このメソッドが破壊的かどうかはひとまず考慮していません。
エラーメッセージ Instance method 'replaceSubrange(_:with:)' requires that 'String.Index' conform to 'RangeExpression'
なおtextViewにどんな文字列が入っているかは不確定です。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/11/26 10:16