- ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:ダブルコーテーションを許可する関数)
ダブルコーテーションを許可する関数
このQ&Aのポイント
- ダブルコーテーションを許可する関数はこれで動かないでしょうか??
- 入力フォーム中で”を記述すると次の画面では消えてしまうので関数を使ってOKにしようとかんがえました。
- Function DoubleQuote(ByVal astrText) Dim strCnvText Dim strChar Dim lPos strCnvText = "" For lPos = 1 To Len(astrText) strChar = Mid(astrText, lPos, 1) Select Case strChar Case "\" strCnvText = strCnvText & "" Case Else strCnvText = strCnvText & strChar End Select Next DoubleQuote = strCnvText End Function
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
2カ所文法エラーになるところがありますね。 実装すべき仕様が明確じゃないので外してるかもしれませんが、 astrText中の二重引用符1文字を二重引用符2文字に全置換したいのだったら、 Function DoubleQuote(ByVal astrText) DoubleQuote = Replace( astrText, """", """""", 1, -1 ) End Function ――で良いのでは。 ただし二重引用符のエスケープの仕方は、言語仕様により異なってます(HTMLなら実体参照、JavaScriptならバックスラッシュ前置。)ので、上記DoubleQuoteで問題が全て解消する可能性は期待薄と思われます。