Wildcard PHP metin arama

2 Cevap php

Ben web güvenli URL'leri olmayan alfanümerik en "_" dönüştürülür, yani olması tahrif edilmiş bir metin dizesi var.

Dönüştürüldükten önce ne yapmak istediğinizi orijinal adı için arama, bu ben joker arama yani bir çeşit ihtiyaç anlamına gelir

What I have

test__mytest

With wildcards

test??mytest

The string I would find with the wildcard search

test: mytest

Can someone tell me how to achieve this in PHP? Thanks

2 Cevap

Might have found the solution here I'll update if I get it to work.

Düzenleme: İşte benim çözüm

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

This replaces all _'s with a search for a single character in that place. I then use the following line to test $searchstring against the test string.

if (preg_match($searchstring, $matchtitle))

Başka bir yaklaşım yerine, çizgi onları dönüştürme özel karakterleri şifreleyen olabilir. Sonra joker ihtiyacınız olmaz, sadece kodlanmış değeri aramak istiyorsunuz.

Örnek test% 3A% 20page için

Bu aynı zamanda sayfalara aşağıdaki iki dönüştürmek çalıştı eğer karşılaşmak sorunu önlemek olacaktır:

test:page
test!page

Her ikisi de test_page dönüştü alacağı ve uzay / zaman sürekliliği tehlikede olacaktır. Muhtemelen pek olası değil, ama yine de istenmeyen.