View Single Post
  #698  
Old 12-07-2008, 01:52 PM
Digital Jedi's Avatar
Digital Jedi Digital Jedi is offline
 
Join Date: Oct 2006
Location: PopCulturalReferenceLand
Posts: 5,171
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Quote:
Originally Posted by dasdingansich View Post
hi,

I?m trying to build replacement code for ebay.de affiliate links, and I got stuck finding the right regex

I need to extract the sellers name from an URL, which usually looks like this:
Code:
http://shop.ebay.de/merchant/user_name
works perfectly fine with:
Code:
http://shop\.ebay\.de/merchant/([\.\w_-]+)
then I can use the sellers name as $p1

however, sometimes ebay puts thos "W0QQ" variables behind it, then it would look something like this:
Code:
http://shop.ebay.de/merchant/user_name_W0QQ_nkwZQQ_armrsZ1QQ_fromZQQ_mdoZ
I need "_W0QQ" and everything after that to be excluded from $p1

first I tried to create a break at the first instance of an underscore, but then I realized usernames can contain underscores as well.

thanks in advance!
It's tricky when you run into an area you need grouped that can easily match the rest of the string. One thing you can do is check to see if the underscore in your grouping is absolutely necessary. If not, then you can easily put an optional word character match after your grouping: [\w_]*

If it is necessary, then try looking for the user name someplace else besides the URL string. Likely, it will be somewhere in the HTML of the page and you can make a ReGex match to that. In this case your grouping, the $p1 reference, will be in the Extraction regex instead.
Reply With Quote
 
X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.01095 seconds
  • Memory Usage 1,767KB
  • Queries Executed 11 (?)
More Information
Template Usage:
  • (1)SHOWTHREAD_SHOWPOST
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (3)bbcode_code
  • (1)bbcode_quote
  • (1)footer
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (6)option
  • (1)post_thanks_box
  • (1)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (1)post_thanks_postbit_info
  • (1)postbit
  • (1)postbit_onlinestatus
  • (1)postbit_wrapper
  • (1)spacer_close
  • (1)spacer_open 

Phrase Groups Available:
  • global
  • postbit
  • reputationlevel
  • showthread
Included Files:
  • ./showpost.php
  • ./global.php
  • ./includes/init.php
  • ./includes/class_core.php
  • ./includes/config.php
  • ./includes/functions.php
  • ./includes/class_hook.php
  • ./includes/modsystem_functions.php
  • ./includes/functions_bigthree.php
  • ./includes/class_postbit.php
  • ./includes/class_bbcode.php
  • ./includes/functions_reputation.php
  • ./includes/functions_post_thanks.php 

Hooks Called:
  • init_startup
  • init_startup_session_setup_start
  • init_startup_session_setup_complete
  • cache_permissions
  • fetch_postinfo_query
  • fetch_postinfo
  • fetch_threadinfo_query
  • fetch_threadinfo
  • fetch_foruminfo
  • style_fetch
  • cache_templates
  • global_start
  • parse_templates
  • global_setup_complete
  • showpost_start
  • bbcode_fetch_tags
  • bbcode_create
  • postbit_factory
  • showpost_post
  • postbit_display_start
  • post_thanks_function_post_thanks_off_start
  • post_thanks_function_post_thanks_off_end
  • post_thanks_function_fetch_thanks_start
  • post_thanks_function_fetch_thanks_end
  • post_thanks_function_thanked_already_start
  • post_thanks_function_thanked_already_end
  • fetch_musername
  • postbit_imicons
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • postbit_display_complete
  • post_thanks_function_can_thank_this_post_start
  • showpost_complete