【发布时间】:2010-01-29 10:23:38
【问题描述】:
我花了几天时间研究一个函数,以正确的顺序获取字符串数组中的常见字符,以创建通配符。
这是一个解释我的问题的例子。我做了大约3个函数,但是当每个字母的绝对位置不同时,我总是有一个错误。
假设“+”是“通配符”:
Array(
0 => '48ca135e0$5',
1 => 'b8ca136a0$5',
2 => 'c48ca13730$5',
3 => '48ca137a0$5');
应该返回:
$wildcard='+8ca13+0$5';
在本例中,棘手的是$array[2] 比其他字符多 1 个字符。
其他例子:
Array(
0 => "case1b25.occHH&FmM",
1 => "case11b25.occHH&FmM",
2 => "case12b25.occHH&FmM",
3 => "case20b25.occHH&FmM1");
应该返回:
$wildcard='case+b25.occHH&FmM+';
在这个例子中,棘手的部分是:
- 重复字符,例如“要删除”部分中的 1 -> 11,公共部分中的 c -> cc
- "to delete" 部分中 $array[2] & [3] 中的 "2" 字符不在同一位置
- 最后一个字符串末尾的“1”字符
我真的需要帮助,因为我找不到此功能的解决方案,它是我应用程序的主要部分。
先谢谢了,不要犹豫,问问题,我会尽快回答。
米克尔
【问题讨论】:
-
它不会杀了你,所以没必要大声喊叫 ;-)
-
嗯,好的……这是用于“HEEELLPPP”的编辑部分:)……它不会杀了我,是的,但我真的,真的,需要让它工作……
-
很高兴你改变了它!现在阅读更好了:-)