Link to home
Start Free TrialLog in
Avatar of egoselfaxis
egoselfaxis

asked on

Extracting the Item ID from an eBay url using javascript

I need to extract -- using Javascript -- the Item ID value from an ebay URL that has the following format:

http://cgi.ebay.com/VINTAGE-PRESSED-GLASS-RUBY-FLASHED-DIAMOND-CANDY-DISH_W0QQitemZ120589354693QQcategoryZ4764QQcmdZViewItemQQ_trksidZp3907.m263QQ_trkparmsZalgo%3DSIC%26itu%3DUCI%252BIA%252BUA%252BFICS%252BUFI%252BDDSIC%26otn%3D8%26pmod%3D370178498217%26po%3DLVI%26ps%3D63%26clkid%3D7427724710710527929

(The item ID value is boldfaced in the url above)

How would I write a regular expression to extract that value and assign it to a variable?

I have the following, but it doesn't seem to be working:

itemid = ebayUrl.replace(/QQitemZ(\d+?)QQ/, '$1');

Please advise.

Thanks!
- Yvan

Avatar of Gary Davis
Gary Davis
Flag of United States of America image

Looks pretty close - remove the question mark.
Avatar of egoselfaxis
egoselfaxis

ASKER

I've removed the question mark, but it still isn't working.

- yg
For example, .. if you run the following javascript, .. you'll see that it returns the entire url instead of the extracted Item ID value:

<script language="JavaScript">
      var ebayUrl = "http://cgi.ebay.com/VINTAGE-PRESSED-GLASS-RUBY-FLASHED-DIAMOND-CANDY-DISH_W0QQitemZ120589354693QQcategoryZ4764QQcmdZViewItemQQ_trksidZp3907.m263QQ_trkparmsZalgo%3DSIC%26itu%3DUCI%252BIA%252BUA%252BFICS%252BUFI%252BDDSIC%26otn%3D8%26pmod%3D370178498217%26po%3DLVI%26ps%3D63%26clkid%3D7427724710710527929";            
      itemid = ebayUrl.replace("/QQitemZ(\d+?)QQ/", "$1");            
      alert(itemid);
</script>
Any takers?

- yg
ASKER CERTIFIED SOLUTION
Avatar of kaufmed
kaufmed
Flag of United States of America image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
SOLUTION
Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Thank you both.  Both of these suggestions worked equally well for me.

- Yvan