php için javascript regex dönüştürmek

2 Cevap php

Ben şu normal ifade var:

RegExp("http://www.amazon.com/([\\w-]+/)?(dp|gp/product)/(\\w+/)?(\\w{10})");

Javascript ile yazılmış.

Onu nasıl PHP'nin ile çalışmak alabilirsiniz preg_match_all? Düzenli ifadeler gitmek gibi farklar kadarıyla nelerdir?

2 Cevap

Bu çalışması gerekir:

preg_match_all('#http://www.amazon.com/([\w-]+/)?(dp|gp/product)/(\w+/)?(\w{10})#', $data, $matches);

Eğer bir dize ile JavaScript RegExp kurucu kullandığınızda, tüm tersbölüler başka ile öncelenmedikçe gerekir. Bu PHP ile durum böyle değil.

Ve normalde diğer bazı sınırlayıcı kullanmak akıllıca Eğer regex için sınırlayıcı olarak / kullanmak istiyorsunuz, ancak bu durumda gibi arama dizesindeki / bir sürü var bu kadar bir ters eğik çizgi ile her çizgi kaçmak zorunda değilsiniz. Bu durumda ben bir sınırlayıcı olarak diyez işareti kullanılır.

Ben özellikle sorununuzu çözer bir desen ile sorunuzu cevaplamak mümkün değilim, ben çeşitli programlama dilleri Düzenli İfadeler uygulamaları arasındaki farkları açıklar this website bir göz atın öneririz.