考虑下面一组文件中的行:
File1.csv
Apple is red WHERE the column ALP_ACCT_PROD_ID, it can be plucked
Apple is red ON ALP_ACCT_PROD_ID , WHERE it can be plucked
如果ALP_ACCT_PROD_ID只出现在单词WHERE之后,那么只有它才应该打印它。
因此,对于上面的文件,它应该只打印行- Apple是红色的,其中列ALP_ACCT_PROD_ID,它可以被提取
并忽略第二个,因为ALP_ACCT_PROD_ID不在WHERE之后。
请帮助解决我正试图做一个正常的grep和我得到两行
grep ALP_ACCT_PROD_ID
3条答案
按热度按时间enyaitl31#
WHERE
-WHERE
上的文字匹配。.*
-匹配.
(任何字符)*
次(零次或多次)ALP_ACCT_PROD_ID
-ALP_ACCT_PROD_ID
上的文字匹配。42fyovps2#
使用
-E
开关,将模式解释为 “扩展正则表达式”。这将Assert如果值包含“ALP_ACCT_PROD_ID",则其前面必须有任意数量的字符和文本“WHERE"。
0x6upsns3#
Python应该是
如果
ALP_ACCT_PROD_ID
在where
之后,则匹配无效。