2013-10-03 5 views
1

Pourquoi retourne un 0 comme prévuPourquoi cette chaîne de recherche ne fonctionne pas comme prévu?

'https://www.site.com/abc?sk=1'.search('https://www.site.com/abc?')

Mais cela retourne un -1 comme 0 devrait?

'https://www.site.com/abc?sk=1'.search('https://www.site.com/abc?sk')

Merci pour tout type de conseils.

+0

'' est un caractère réservé dans l'expression régulière, vous devrez peut-être échapper –

Répondre

3

car le ? a une signification particulière dans les expressions régulières.

Utilisez indexOf à la place (qui fonctionne avec des chaînes simples) lorsque vous n'avez pas besoin d'expressions régulières:

'https://www.site.com/abc?sk=1'.indexOf('https://www.site.com/abc?sk') 
1
<script>  
if('https://www.site.com/abc?sk=1'.indexOf('https://www.site.com/abc?sk')>=0){ 
    //Do something you want 
} 
</script> 
+0

? Pourquoi ferais-tu '> ='? Ensuite, il correspondrait également 'http: //fishing.com/https: // www.site.com' – Thilo

Questions connexes