通配符PHP文本搜索

时间:2010-03-21 19:53:15

标签: php search text

我的文字字符串已被修改为网页安全网址,即非字母数字转换为“_”。

我想要做的是在转换之前搜索原始名称,这意味着我需要某种外卡搜索,即

我有什么

test__mytest

使用通配符

test??mytest

通过通配符搜索找到的字符串

test: mytest

有人可以告诉我如何在PHP中实现这一点吗? 感谢

2 个答案:

答案 0 :(得分:0)

可能找到了解决方案here 如果我让它工作,我会更新。

编辑:这是我的解决方案

$searchstring = "/".str_replace("_","(.?)", escape_string_for_regex($match))."/";

这将替换所有_,并在该位置搜索单个字符。 然后我使用以下行来测试针对测试字符串的$ searchstring。

if (preg_match($searchstring, $matchtitle))

答案 1 :(得分:0)

另一种方法可能是对特殊字符进行编码,而不是将它们转换为下划线。那么你就不需要通配符了,你只需要搜索编码值。

例如测试%3A%20页

这也可以防止您尝试将以下两个转换为页面时遇到的问题:

试验:页
测试!页

他们都会变成test_page,并且空间/时间连续体将处于危险之中。可能不太可能,但仍然不受欢迎。

相关问题