当我复制名为“ A B”的文件的名称时,仅在忽略空格后才搜索“ A”。 有没有办法在单词之间添加“ +”。
Set WshShell = CreateObject("WScript.Shell")
Set X = CreateObject("htmlfile")
text = X.ParentWindow.ClipboardData.GetData("text")
WshShell.Run "cmd.exe /k start www.google.com/search?q="+text & Chr(34),0
Set WshShell = Nothing
答案 0 :(得分:1)
您的意思是剪贴板中有一些文本,这些文本之间用空格隔开,并且您想将其转换为字符串,其中的各个单词之间用&符号相连,因此您可以将其用作Google搜索字词吗?为此使用Replace
函数。另外,从代码段中删除Chr(34)
。没有用。
text = X.ParentWindow.ClipboardData.GetData("text")
text = Replace(text, " ", "+")
WshShell.Run "cmd.exe /k start www.google.com/search?q=" & text, 0
一种更健壮的方法(用于处理由多个空格和/或其他空格字符分隔的单词)将使用正则表达式替换。
Set re = New RegExp
re.Pattern = "\s+"
re.Global = True
text = X.ParentWindow.ClipboardData.GetData("text")
text = re.Replace(text, "+")
WshShell.Run "cmd.exe /k start www.google.com/search?q=" & text, 0
答案 1 :(得分:0)
感谢Ansgar,
Set WshShell = CreateObject("WScript.Shell")
Set X = CreateObject("htmlfile")
text = X.ParentWindow.ClipboardData.GetData("text")
text = Replace(text, " ", "+")
WshShell.Run "cmd.exe /k start www.google.com/search?q=" & text, 0
Set WshShell = Nothing
Set re = New RegExp
re.Pattern = "\s+"
re.Global = True
Set WshShell = CreateObject("WScript.Shell")
Set X = CreateObject("htmlfile")
text = X.ParentWindow.ClipboardData.GetData("text")
text = re.Replace(text, "+")
WshShell.Run "cmd.exe /k start www.google.com/search?q=" & text, 0
这两个代码中的任何一个都可以工作。