有一个一维数组$arr,其中每个元素都包含文本。此文本可能包含也可能不包含名称(Маша, Саша, Дима, Катя, Василиса Иннокентьевна, Клавдий Цезаревич, Иван Дурак等等,等等 - 列表很长)。
告诉我, PHP如何过滤这些相同的名称?名称列表保存在单独的文件中filtr.txt
不需要从元素文本中删除包含名称的数组元素,而仅删除名称本身。
这可以在不使用正则表达式的情况下完成吗?
有一个一维数组$arr,其中每个元素都包含文本。此文本可能包含也可能不包含名称(Маша, Саша, Дима, Катя, Василиса Иннокентьевна, Клавдий Цезаревич, Иван Дурак等等,等等 - 列表很长)。
告诉我, PHP如何过滤这些相同的名称?名称列表保存在单独的文件中filtr.txt
不需要从元素文本中删除包含名称的数组元素,而仅删除名称本身。
这可以在不使用正则表达式的情况下完成吗?
结果:
感谢@u_mulder的提示。
无循环选项:
先前答案的改进版本如下所示:
另一个选项,但不是迭代
forech,被使用array_map:我将添加一点关于 array_map 和 array_walk
可能值得简要解释一下:
array_map对所有数组元素应用回调函数并返回一个新数组
array_walk将回调函数应用于数组的每个元素,并告诉它是否成功,作为第三个参数,您可以将第三个参数传递给回调函数
更新:文件中的名称