如何解决试图从列表中删除一个项目
我的代码运行良好,但是我正在尝试进行增强
https://trycf.com/gist/5fdbccd52121856991e6fe3f82307d34/lucee5?theme=monokai
在上面,我正在尝试如果列表中已删除的项目是IN
,它也应该删除以I
字母开头的其他项目
来源
<cfscript>
i = 'AS,AK,SK,SB,IN,IP';
Y = 'IN';
local.X = [];
listEach(I,function(value,index) {
if (!listFindNoCase(Y,value)) {
arrayAppend(X,value);
}
});
dump(x);
</cfscript>
解决方法
您可以这样操作:先使用listFindNoCase
检查列表是否包含元素,然后使用listFilter
过滤新列表中不需要的项目,如下所示:
<cfscript>
originalList = 'AS,AK,SK,SB,IN,IP';
needle = 'IN,AS';
newList = originalList;
listEach(needle,function(needle) {
if (listFindNoCase(newList,needle)) {
newList = listFilter(newList,function(value) {
return lcase(left(value,1)) != lcase(left(needle,1));
});
}
});
dump(newList);
</cfscript>
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。