2012-11-09 17 views
5

mam tę odpowiedź w żądaniu HTTP, jak poniżejRegular Expression Extractor w JMeter

href="index.php?module=Meetings&action=DetailView&record=ed51c2d9-1958-bd61-cce1-509d30ccd4ac"> 

Chcę uzyskać wartość "record", ale kiedy ustawić

Regular Expression : record=(.+?) 

tylko "e" jest zwracany. Co muszę zrobić zamiast tego?

Odpowiedz

6

Wyrażenie regularne zużywa się tak mało jak to możliwe (z uwagi na ?). Dlatego jest zadowolony po przyjęciu pierwszego znaku. powinieneś raczej uczynić go chciwy i ograniczyć ewentualne znaków (tak, że nie można przejść obok końcu parametru):

record=([a-f0-9-]+) 

Jeśli nie wiemy, jakie znaki są dozwolone jako wartość parametru, można również powiedzmy, konsumować wszystko oprócz ampersandów i cytatów:

record=([^"'&]+) 

w zależności od tego, gdzie go używać, może być konieczne, aby uniknąć jednego z cytatami z odwrotnym ukośnikiem.

+0

stosując zapis = ([a-f0-9 -] +) działało dobrze. Dziękuję. – user1813000

0

Podany tekst

href="index.php?module=Meetings&action=DetailView&record=ed51c2d9-1958-bd61-cce1-509d30ccd4ac"> 

Regular Expression do uzyskania wartości rekordowe od dany tekst ceni

record=(.+)" 

wyrażeń regularnych dostaje następujący zapis wartości

record=ed51c2d9-1958-bd61-cce1-509d30ccd4ac" 
+0

Rewizja za niepoprawne, niesformatowane (do następnego użytkownik je naprawił), a dwa lata później. A to tylko jeden z kilkunastu takich postów, które dziś napisałeś. To nikomu nie pomaga, @Subash, a już najmniej samemu. –

+0

Dodaj, jeśli znasz odpowiednie formaty tutaj –

+0

To są poprawne formaty, które zweryfikowałem i umieściłem tutaj jako post –

Powiązane problemy