文字列を取り、[alpha character]"
のすべてのインスタンスを[alpha character] Inch
に置き換えようとしています。たとえば、文字列4" sticker
は4 Inch sticker
になりますが、文字列My "Loving" Brother
は変更されません。SQL Server:アルファの前に特殊文字を置き換えます。
REPLACE(@String, '"', ' Inch')
を使って直接置き換えることができますが、2番目の例は変更されません。前の値がアルファ(a-Z)値の場合にのみ、この特殊文字を置き換えるにはどうすればよいですか?
私は助けていただきありがとうございます!
を置き換えます"すべてのインスタンス"ので、もしあなたが '4" x2 "ステッカーブックは何もなかった変わった?だから実際には、値が1回しか変わらない場合は値を変更したいだけですか?ルールはあまりにも私の本のあいまいさのために開いています。たぶん... http://rextester.com/IFC94069しかし、len(src)-len(replace(src、 '"'、 ''))= 1の場合は、' src '、' 、 'インチ') else src end' – xQbert
これは正しいです。あなたの例のようなエッジケースを説明するのは間違いなく良いでしょうが、単純なケースを達成する方法を理解すれば、残りの部分をどのように構築するかを考え出すことができます。私はあなたの(または他の誰かの)時間を、必要以上に無駄にしたくありませんでした。 – AliceSmith