我有一个字符串:string1 string2 - string3 string4
。我需要在-
分成两部分(注意&#34的两侧空间; - ")。我有以下代码,它们没有按预期工作:
#include <MsgBoxConstants.au3>
#include <String.au3>
Local $test = _StringExplode("string1 string2 - string3 string4", " - ")
MsgBox($MB_SYSTEMMODAL, "Title", $test[1])
输出为string2
。我希望它是string3 string4
。
必须是一个小小的疏忽,但我找不到它。
答案 0 :(得分:3)
...解释我做错了什么......
这是a bug concerning AutoIt v3.3.12.0(在后续测试版中解决)。或者可以使用StringSplit()
:
#include <MsgBoxConstants.au3>
#include <StringConstants.au3>
#include <Array.au3>
Global Const $g_aTest = StringSplit('string1 string2 - string3 string4', ' - ', $STR_ENTIRESPLIT)
MsgBox($MB_SYSTEMMODAL, 'Title', $g_aTest[2])
_ArrayDisplay($g_aTest)
包含$STR_NOCOUNT
到StringSplit()
的flag参数会返回与_StringExplode()
相同的数组。