category_generic = book, book_asl, author, author_asl, publisher
StringSplit, categories_array, category_generic, `,
Loop
{
category := categories_array%a_index%
do_my_amazing_stuff
if (category = "author")
{
do_some_more_amazing_stuff
}
}
问题:评估:if(类别="作者"(永远不会成立,尽管循环解析了数组的全部内容。此外,它可以正确地将类别写出出现在数组中,并将其写出到文件中。我尝试了数十亿个不同的版本,但没有一个有效。有人可以向我解释为什么评估没有得到评估吗?
问题是列表中的空格。AHK不会神奇地放弃它们。如果仔细观察,每个列表项后面的空格也会显示在输出文件中。要么首先将它们排除在外,要么以某种方式丢弃它们。 StringSplit
提供了这样的功能OmitChars
:
StringSplit, categories_array, category_generic, `, %A_SPACE%