我正在使用此功能,它按预期工作。它删除了所有标点符号。
- 第一个问题是它不会删除双引号 "
- 第二个问题是我需要选择需要处理的文本。我更喜欢默认纠正当前文件(所有文本)。
Sub removePunc() REM the text ranges to work on must be seleczed in advance. REM This will be done mostly by a F&R action with an appropriate REM search strung and 'Find All'. REM the this macro can be run. fa = createUnoService("com.sun.star.sheet.FunctionAccess") rgs = ThisComponent.CurrentSelection n = rgs.Count -1 For k = 0 To n rg = rgs(k) h = fa.callFunction("REGEX", Array(rg.String, "!", " ", "g")) h = fa.callFunction("REGEX", Array(h , "'", " ", "g")) h = fa.callFunction("REGEX", Array(h , ",", " ", "g")) h = fa.callFunction("REGEX", Array(h , "\(", " ", "g")) h = fa.callFunction("REGEX", Array(h , "\)", " ", "g")) h = fa.callFunction("REGEX", Array(h , "\*", " ", "g")) h = fa.callFunction("REGEX", Array(h , "\-", " ", "g")) h = fa.callFunction("REGEX", Array(h , "\;", " ", "g")) h = fa.callFunction("REGEX", Array(h , "\?", " ", "g")) h = fa.callFunction("REGEX", Array(h , "\[", " ", "g")) h = fa.callFunction("REGEX", Array(h , "\]", " ", "g")) h = fa.callFunction("REGEX", Array(h , "\–", " ", "g")) h = fa.callFunction("REGEX", Array(h , "\—", " ", "g")) h = fa.callFunction("REGEX", Array(h , "\‘", " ", "g")) h = fa.callFunction("REGEX", Array(h , "\“", " ", "g")) h = fa.callFunction("REGEX", Array(h , "\”", " ", "g")) h = fa.callFunction("REGEX", Array(h , "\.", " ", "g")) h = fa.callFunction("REGEX", Array(h , "\:", " ", "g")) h = fa.callFunction("REGEX", Array(h , "\'", " ", "g")) h = fa.callFunction("REGEX", Array(h , "\uFEFF", " ", "g")) rg.String = h Next k End Sub