首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何修剪所有形式的空白(制表符、新行、…)从龙的字符串自然说话的高级脚本?

如何修剪所有形式的空白(制表符、新行、…)从龙的字符串自然说话的高级脚本?
EN

Stack Overflow用户
提问于 2016-12-06 01:33:27
回答 2查看 204关注 0票数 0

如何修剪所有形式的空白(制表符、新行、…)从龙的字符串自然说话的高级脚本?

Trim()只删除空白。例如,下面的语音命令将键入[tab]test

代码语言:javascript
复制
' Tested with Dragon NaturallySpeaking 12.5 Professional on Windows 7 SP1 x64 Ultimate
Sub Main
    s = vbTab & "test"
    s = Trim(s)
    SendKeys s
End Sub
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-12-06 19:15:42

根据我在这里所做的工作:

CheckNewPara在这里:FORUMVIEWTMP=Single或搜索该术语的论坛,并注意,它所做的是在调用该函数以决定下一步要做什么时,在游标所在的位置之前,回顾现有字符存在的情况。

一个人可以适应并创造以下内容:

代码语言:javascript
复制
' Tested with Dragon NaturallySpeaking 13 Professional on Windows 8.1
Sub Main
    s = vbTab & " " & vbTab & "test"
    s = myTrim(s)
    MsgBox """" & s & """"
End Sub
Function myTrim ( s As String )
    While Left(s,1)=Chr(9) Or Left(s,1)=Chr(10) Or Left(s,1)=Chr(13) Or Left(s,1)=" "
        s=Mid(s,2)
    Wend
    While Right(s,1)=Chr(9) Or Right(s,1)=Chr(10) Or Right(s,1)=Chr(13) Or Right(s,1)=" "
        s=Mid(s,1,Len(s)-1)
    Wend
    myTrim = s
End Function

当然,您可以在一个常用的注释文件中引用您的myTrim函数,所以只需要编写一次。

Hth,

票数 2
EN

Stack Overflow用户

发布于 2016-12-06 13:31:38

我不知道会自动删除选项卡和其他空白空间的Trim命令,但是您可以使用Replace命令逐个删除空白空间。

代码语言:javascript
复制
Sub Main
    s = vbTab & "test"
    s = Trim(s)
    s = Replace (s, Chr(9), "") ' Replaces the tab character written in ASCII code with nothing
    s = Replace (s, Chr(10), "") ' Replaces the LF written in ASCII code with nothing
    s = Replace (s, Chr(13), "") ' Replaces the CR written in ASCII code with nothing
    SendKeys s
End Sub

这是一个部分解决方案:它将删除所有的空白空间,甚至在字符串中。如果您希望保留这些字符,则必须找到一种方法来测试第一个或最后一个字符是否为空白,并将它们替换为空。因为我以前没做过这件事,所以我想不出那件事来。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40986373

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档