OpenOffice Writer宏从String中删除撇号

时间:2016-01-27 12:14:01

标签: replace macros apostrophe openoffice-writer

我正在OpenOffice Writer中编写一个宏。

我从.xml文件中读取文本并将其放入String中。 String将如下所示: "你好" (所以撇号也是字符串的一部分)

所以要清楚String看起来像这样(例子): String removeApostrophe =" " hello" "。

我知道它很奇怪,但是它以.xml文件的方式编写。

我需要的是一个函数,我可以将String放入并删除撇号,只有:hello会出来。

我试过但不可能的是替换功能:替换(" "你好" "," &# 34; ","")

1 个答案:

答案 0 :(得分:0)

函数调用:

removeApostrophe = replace(removeApostrophe, chr(34), "")

这是使用的功能:

Function Replace(removeApostrophe As String, Search As String, NewPart As String)
  Dim Result As String
  Dim StartPosition As Long
  Dim CurrentPosition As Long

  Result = ""
  StartPosition = 1
  CurrentPosition = 1

  If Search = "" Then
    Result = removeApostrophe
  Else 
Do While CurrentPosition <> 0
  CurrentPosition = InStr(StartPosition, removeApostrophe, Search)
  If CurrentPosition <> 0 Then
    Result = Result + Mid(removeApostrophe, StartPosition, _
    CurrentPosition - StartPosition)
    Result = Result + NewPart
    StartPosition = CurrentPosition + Len(Search)
  Else
    Result = Result + Mid(removeApostrophe, StartPosition, Len(removeApostrophe))
  End If                ' Position <> 0
Loop 
 End If 

  Replace = Result
End Function

首先我使用了:char(34),但这并不起作用。所以我发现chr(34)是正确的用法。