#1
  1. No Profile Picture
    Registered User
    Devshed Newbie (0 - 499 posts)

    Join Date
    Jul 2009
    Posts
    10
    Rep Power
    0

    Question Why the regex doesn't catch "Extra" group?


    My regex:
    Code:
    # Region
    <tr>
    \s*<td\s+class="grey11">Region:</td>\s*
    <td\s+class="b11\s+b">(?<Region>.+?(?=</td>))</td>
    \s*
    </tr>
    \s*
    
    </table>
    \s*
    
    #Optional AD
    (
    <div\s+class="wid342\s+fl\s+padtop15">
    \s*
    <div\s+class="linkicon\s+listicon\s+lh16">
    \s*
    <a(?:[^>]*?)>
    (?:.+?)</a>\s*</div>\s*</div>
    ){0,1}
    
    </div>
    \s*
    
    (
    # Amenities
    <div\s+class="wid342\s+fl\s+mtop10(?:[^>]*?)>
    \s*
    <div\s+class="pad10">
    (?:.+?)
    <ul\s+class="chkbox">
    (?<Amenities>.+?)
    </ul>
    \s*
    </div>
    ){0,1}
    
    
    
    (?:.+?)
    
    #Extra
    (
    <div\s+class="b10\s+lh16\s+vpad10">
    \s*(?<Extra>.+?)\s*
    </div>
    ){0,1}

    The text to be parsed:

    <tr>
    <td class="grey11">Drive</td>
    <td class="b11">Front</td>
    </tr>
    <tr>
    <td class="grey11">Transm</td>
    <td class="b11 b">Mech</td>
    </tr>
    <tr>
    <td class="grey11">Intr</td>
    <td class="b11">Leather</td>
    </tr>

    <tr>
    <td class="grey11">COND:</td>
    <td class="b11">USED</td>
    </tr>
    <tr>
    <td class="grey11">Region:</td>
    <td class="b11 b">QQQQQQQQQQQQQ</td>
    </tr>
    </table>
    </div>
    <div class="wid342 fl mtop10" style="background:#F5F5F5">
    <div class="pad10">
    <h4 class="darkred">What's inside</h4>
    <ul class="chkbox">
    <li class="par">
    <ul>
    <li>ABS</li>
    <li>Acs</li>
    <li>HUD</li>
    <li>Immo</li>
    </li>
    <li class="par">
    <ul>
    <li>Chairs</li>
    <li>Alarm</li>
    </ul>
    </li>
    </ul>
    </div>
    </div>
    <div class="wid342 fl oh">
    <p class="vmargin10">
    <h4>Extra info</h4>
    <div class="b10 lh16 vpad10">
    Good condition. Assembled in ---------
    </div>

    Why doesn't it return me "Good condition. Assembled in ---------" for "Extra" group? This group is actually optional; that's why I marked it with {0,1}. And if I remove {0,1} the regex returns me it's expected value but only in this particular case.

    What's wrong to my regex?
  2. #2
  3. No Profile Picture
    User 165270
    Devshed Newbie (0 - 499 posts)

    Join Date
    Oct 2005
    Posts
    497
    Rep Power
    938
    In how many forums have you posted this question? I'd like to check if you've already been answered before writing an elaborate reply.
  4. #3
  5. No Profile Picture
    Registered User
    Devshed Newbie (0 - 499 posts)

    Join Date
    Jul 2009
    Posts
    10
    Rep Power
    0

    Exclamation


    Originally Posted by prometheuzz
    In how many forums have you posted this question? I'd like to check if you've already been answered before writing an elaborate reply.
    It's the first post regarding this topic. I'd appreciate your reply very much.

    Comments on this post

    • prometheuzz disagrees : I don't like helping cross posters. Especially those who have previously been explained why cross posting is frowned upon by many.
  6. #4
  7. No Profile Picture
    User 165270
    Devshed Newbie (0 - 499 posts)

    Join Date
    Oct 2005
    Posts
    497
    Rep Power
    938
    Originally Posted by senglory
    It's the first post regarding this topic. I'd appreciate your reply very much.
    False. You have posted it here as well: http://forums.devnetwork.net/viewtop...st=0&sk=t&sd=a

    I'm done helping you.

IMN logo majestic logo threadwatch logo seochat tools logo