Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 7966205
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: June 4, 20262026-06-04T06:21:47+00:00 2026-06-04T06:21:47+00:00

I need to match contents of a list with a given pattern, and form

  • 0

I need to match contents of a list with a given pattern, and form another list which will be having everything except the matches. Meaning, I am trying to make an exclude list.

Now with one pattern match, it is easy. But for more that one, it becomes tricky.

Lets see an example :

Lmain=[arc123, arc234,xyz111,xyz222,ppp999,ppp888]

for count in range(len[Lmain]):

    if Pattern matches Lmain[i]:
              Pass
    else:result.append(Lmain[i])

Now lets say pattern = arc , my result will be

result = [xyz111,xyz222,ppp999,ppp888]

This is just a logic, where I will be using regular expr for finding match.

Now if we have 2 patterns, then using above logic in a loop :

Pattern=['arc','xyz']

for pat in Pattern:
      if pat matches Lmain[i]:
          Pass
      else:result.append(Lmain[i])

This will give us the wrong result

result = [xyz111,xyz222,ppp999,ppp888,arc123,arc234,ppp999,ppp888]

So , you can see above logic just wont work .

My plan:

First we find exclude list for first Pattern which will give us result:

result = [xyz111,xyz222,ppp999,ppp888]

For 2nd pattern, we need to look in to the above result.

if Pattern matches Result[i]:
      Pass
else:result_final.append(Result[i])

I think we need to use Recursion to implement above logic. Now how do we do that?
Also we dont know the number of patterns user is going to enter. It can be one or more.

Anybody has any logic ideas, then please share.

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-06-04T06:21:50+00:00Added an answer on June 4, 2026 at 6:21 am

    Using a list comprehension and a generator expression, and skipping the intermediate step of building an exclude list and just building the final list:

    >>> import re
    >>> Lmain=['arc123', 'arc234', 'xyz111', 'xyz222','ppp999','ppp888']
    >>> Pattern=['arc','xyz']
    >>> [x for x in Lmain if not any(re.search(y, x) for y in Pattern)]
    ['ppp999', 'ppp888']
    
    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

I need to match abreviations, where a dot means everything that starts with, like:
I need to match from a a string \begin{?} and \end{?} where ? is
I need to match Safari browsers, but not Chrome browsers using one Regex. I
I need to match with preg_match the urls of a certain domain that end
I need to match input strings (URLs) against a large set (anywhere from 1k-250k)
I need to match a image url like this: http://site.com/site.com/files/images/img (5).jpg Something like this
I need to match a fixed width field on a file layout with a
I need to match in ANTLR a message containing 2 fields separated by a
I need to match entries like {@x anything} in strings like a b c
I have two datatables and I need to match zipcodes from each of the

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.