Dizgeyi ayıklamak için düzenli ifade

Aşağıdaki dizeyi aldım:

"url("http://localhost/image/user/temp/n9cec42c939ab461cac7852c267413b1b.jpg")"

Dosya adını JavaScript düzenli ifadesini kullanarak nasıl çıkarabilirim?

[^ /] + $ Denedim ama sonunda ") tutar.

Teşekkür ederim.

0

4 cevap

[^/]+"\)$

örnek üzerinde çalışacaktı. Eğer peşinde değilseniz, sorunuza daha fazla ayrıntı verin.

0
katma

Yazdığın şeye çok yakın.

/[^\/]+(?=\"\)$)/

Örneğin

/[^\/]+(?=\"\)$)/.exec(s)

Burada s örnek dizginiz doğru dosya adını döndürür.

(açıklama: Normal ifadelerle, form (? = ...) , maçı takip etmesi gereken ancak maçın bir parçası olarak kabul edilmemesi gereken bir şey anlamına gelir).

0
katma

split on backslash, pop to get the last result, and remove the ")

'url("http://localhost/image/user/temp/n9cec42c939ab461cac7852c267413b1b.jpg")'.split('/').pop().replace('\")', '')

Örnek

Ya da RegExp sadece bir şey ise:

var url = 'url("http://localhost/image/user/temp/n9cec42c939ab461cac7852c267413b1b.jpg")'; 
url.match(/.+\/(.+)\"\)/)[1];//file name
0
katma

Bir regexp ile şunları kullanabilirsiniz:

'url("http://localhost/image/user/temp/n9cec42c939ab461cac7852c267413b1b.jpg")'.match(/\/([\d\w]+\.[\w]+)/)[1]

dosya adınızın a-z + 0-9 ve üç karakterli uzantıdan oluştuğunu varsayar

0
katma