在自动热键格式列表框的输出



在自动热键中,我有以下代码:

^r::
Gui, Add, ListBox, Multi vMyListBox r10, Strawberries|Pears|Oranges|`r|Beans|Peas|Tomatoes|Turnips|
Gui, Add, Button, Default, OK
Gui, Show
return
ButtonOK:
Gui, Submit
MsgBox % MyListBox
send, % MyListBox
return

输出为,例如:

Strawberries|Beans|Turnips

但我希望它是:

Strawberries, Beans, Turnips,

我应该如何继续?

提前感谢

听起来像是RegEx的工作。

使用RegExReplace((和MyListBox变量作为haystack\|"作为针。有关此特定RegEx针头的解释,请参阅此互动。

将替换后的String版本保存在一个名为NewStr的变量中,可以得到以下代码行:

NewStr := RegExReplace(MyListBox, "|" , Replacement := ", ")

当前代码:

^r::
Gui, Add, ListBox, Multi vMyListBox r10, Strawberries|Pears|Oranges|`r|Beans|Peas|Tomatoes|Turnips|
Gui, Add, Button, Default, OK
Gui, Show
return
ButtonOK:
Gui, Submit
MsgBox % MyListBox
NewStr := RegExReplace(MyListBox, "|" , Replacement := ", ")
MsgBox % NewStr
send, % NewStr
return

然而该版本不添加尾随的"&";。为了添加这个,让我们只添加一个"到我们刚刚用NewStr.=", "创建的NewStr变量


最终代码:

^r::
Gui, Add, ListBox, Multi vMyListBox r10, Strawberries|Pears|Oranges|`r|Beans|Peas|Tomatoes|Turnips|
Gui, Add, Button, Default, OK
Gui, Show
return
ButtonOK:
Gui, Submit
MsgBox % MyListBox
NewStr := RegExReplace(MyListBox, "|" , Replacement := ", ")
NewStr.=", "
MsgBox % NewStr
send, % NewStr
return

相关内容

  • 没有找到相关文章

最新更新