Grepping words for match in a file

Dan Sommers 2QdxY4RzWzUUiLuE at potatochowder.com
Sat Dec 28 11:14:14 EST 2019


On 12/28/19 12:29 AM, Mahmood Naderan via Python-list wrote:
> Hi
> I have some lines in a text file like
> ADD R1, R2
> ADD3 R4, R5, R6
> ADD.MOV R1, R2, [0x10]
> If I grep words with this code
> for line in fp:
>      if my_word in line:
> Then if my_word is "ADD", I get 3 matches. However, if I grep word with this code
> for line in fp:
>      for word in line.split():
>          if my_word == word:
> Then I get only one match which is ADD R1. R2.
> Actually I want to get 2 matches. ADD R1, R2 and ADD.MOV R1, R2, [0x10] because these two lines are actually "ADD" instructions. However, "ADD3" is something else.
> How can I fix the code for that purpose?
(1) word.startswith() won't solve your problem.  Expliticly
checking the character after the second "D" would.  You'll
have to determine which characters are or aren't part of
the instruction.  A complete solution probably depends on
what else you are or will look for in the future.

(2) That looks like a programming language (88000? POWER?).
Watch out for comments containing the word ADD, too.


More information about the Python-list mailing list