You are not logged in.

#1 02 Jun 2014 07:16

platon39
Member
Registered: 24 Feb 2014
Posts: 30

extract only match string

Hi,
i have a txt file like

2    101199303 \ TR_MCC \ 3 \ ALERT: TERMINATION PROBLEM \   \ Table MA_NWW_WW_DAT Key ART_NR/SPRACH_KZ/Count \   \ 408024/ENG/2
3    101197081 \ BE_MCC \ 3 \ ALERT: TERMINATION PROBLEM \   \ Table MA_NWW_WW_DAT_ML Key ART_NR/SPRACH_KZ/Count \ 3 \ 459669/ENG/2
4    101198374 \ BE_MCC \ 3 \ ALERT: TERMINATION PROBLEM \   \ Table MA_NWW_WW_DAT_ML Key ART_NR/SPRACH_KZ/Count \ 2 \ 183996/BFR/2
5    101197085 \ BE_MCC \ 3 \ ALERT: TERMINATION PROBLEM \   \ Table MA_NWW_WW_DAT_ML Key ART_NR/SPRACH_KZ/Count \ 3 \ 459670/BFR/2
6    101197084 \ BE_MCC \ 3 \ ALERT: TERMINATION PROBLEM \   \ Table MA_NWW_WW_DAT_ML Key ART_NR/SPRACH_KZ/Count \ 3 \ 459670/GER/2
13    101197076 \ BE_MCC \ 3 \ ALERT: TERMINATION PROBLEM \   \ Table MA_NWW_WW_DAT_ML Key ART_NR/SPRACH_KZ/Count \ 3 \ 412454/BFR/2
14    101197075 \ BE_MCC \ 3 \ ALERT: TERMINATION PROBLEM \   \ Table MA_NWW_WW_DAT_ML Key ART_NR/SPRACH_KZ/Count \ 3 \ 412454/ENG/2
15    101197074 \ BE_MCC \ 3 \ ALERT: TERMINATION PROBLEM \   \ Table MA_NWW_WW_DAT Key ART_NR/SPRACH_KZ/Count \ 3 \ 412454/GER/2
16    101189632 \ BE_MCC \ 3 \ ALERT: TERMINATION PROBLEM \   \ Table MA_NWW_WW_DAT_ML Key ART_NR/SPRACH_KZ/Count \ 6 \ 429159/GER/2
17    101189631 \ BE_MCC \ 3 \ ALERT: TERMINATION PROBLEM \   \ Table MA_NWW_WW_DAT_ML Key ART_NR/SPRACH_KZ/Count \ 6 \ 429159/BFR/2
18    101189630 \ BE_MCC \ 3 \ ALERT: TERMINATION PROBLEM \   \ Table MA_NWW_WW_DAT_ML Key ART_NR/SPRACH_KZ/Count \ 6 \ 429159/ENG/2
19    101189629 \ BE_MCC \ 3 \ ALERT: TERMINATION PROBLEM \   \ Table MA_NWW_WW_DAT_ML Key ART_NR/SPRACH_KZ/Count \ 6 \ 342544/BFR/2
20    101189628 \ BE_MCC \ 3 \ ALERT: TERMINATION PROBLEM \   \ Table MA_NWW_WW_DAT_ML Key ART_NR/SPRACH_KZ/Count \ 6 \ 342544/ENG/2
21    101189627 \ BE_MCC \ 3 \ ALERT: TERMINATION PROBLEM \   \ Table MA_NWW_WW_DAT_ML Key ART_NR/SPRACH_KZ/Count \ 6 \ 342544/GER/2
24    101198392 \ FR_MCC \ 3 \ ALERT: TERMINATION PROBLEM \   \ Table MA_NWW_WW_DAT_ML Key ART_NR/SPRACH_KZ/Count \ 2 \ 159720/ENG/2
30    101199299 \ NL_MCC \ 3 \ ALERT: TERMINATION PROBLEM \   \ Table LI_DISPOPLAN Key LIEF_NR/LTS_NR/HIER_LFD/SORT_KLASSE_DISPO/ART_KLASSE_DISPO/Count \   \ 40204/1/8705/XX/S2/2
31    101199300 \ NL_MCC \ 3 \ ALERT: TERMINATION PROBLEM \   \ Table LI_DISPOPLAN Key LIEF_NR/LTS_NR/HIER_LFD/SORT_KLASSE_DISPO/ART_KLASSE_DISPO/Count \   \ 40204/1/8755/XX/S2/2
32    101197070 \ NL_MCC \ 3 \ ALERT: TERMINATION PROBLEM \   \ Table MA_NWW_WW_DAT_ML Key ART_NR/SPRACH_KZ/Count \ 3 \ 124184/ENG/2
33    101199280 \ NL_MCC \ 3 \ ALERT: TERMINATION PROBLEM \   \ Table LI_DISPOPLAN Key LIEF_NR/LTS_NR/HIER_LFD/SORT_KLASSE_DISPO/ART_KLASSE_DISPO/Count \   \ 40204/1/8704/XX/S2/2
34    101199281 \ NL_MCC \ 3 \ ALERT: TERMINATION PROBLEM \   \ Table LI_DISPOPLAN Key LIEF_NR/LTS_NR/HIER_LFD/SORT_KLASSE_DISPO/ART_KLASSE_DISPO/Count \   \ 40204/1/8759/XX/S2/2
35    101199289 \ NL_MCC \ 3 \ ALERT: TERMINATION PROBLEM \   \ Table LI_DISPOPLAN Key LIEF_NR/LTS_NR/HIER_LFD/SORT_KLASSE_DISPO/ART_KLASSE_DISPO/Count \   \ 40204/1/8708/XX/S2/2
36    101199288 \ NL_MCC \ 3 \ ALERT: TERMINATION PROBLEM \   \ Table LI_DISPOPLAN Key LIEF_NR/LTS_NR/HIER_LFD/SORT_KLASSE_DISPO/ART_KLASSE_DISPO/Count \   \ 40204/1/8702/XX/S2/2
37    101199287 \ NL_MCC \ 3 \ ALERT: TERMINATION PROBLEM \   \ Table LI_DISPOPLAN Key LIEF_NR/LTS_NR/HIER_LFD/SORT_KLASSE_DISPO/ART_KLASSE_DISPO/Count \   \ 40204/1/8782/XX/S2/2
52    101199279 \ PT_MCC \ 3 \ ALERT: TERMINATION PROBLEM \   \ Table MA_NWW_WW_DAT_ML Key ART_NR/SPRACH_KZ/Count \   \ 83975/ENG/2
53    101199278 \ PT_MCC \ 3 \ ALERT: TERMINATION PROBLEM \   \ Table MA_NWW_WW_DAT_ML Key ART_NR/SPRACH_KZ/Count \   \ 68047/ENG/2
54    101199823 \ DE_REAL \ 3 \ ALERT: TERMINATION PROBLEM \   \ Table MA_NWW_WW_DAT_ML Key ART_NR/SPRACH_KZ/Count \   \ 177997/ENG/2
55    101175798 \ DE_REAL \ 3 \ ALERT: TERMINATION PROBLEM \   \ Table LI_LTS_KONDITION Key LIEF_NR/LTS_NR/KOND_ART/Count \   \ 65112/1/28/2



and i want to extract  only


2    101199303 \ TR_MCC \ 3 \ ALERT: TERMINATION PROBLEM \   \ Table MA_NWW_WW_DAT Key ART_NR/SPRACH_KZ/Count \   \ 408024/ENG/2
15    101197074 \ BE_MCC \ 3 \ ALERT: TERMINATION PROBLEM \   \ Table MA_NWW_WW_DAT Key ART_NR/SPRACH_KZ/Count \ 3 \ 412454/GER/2

I tryied

findstr   /L   "^.*Table MA_NWW_WW_DAT"   "termination_problem.txt"

but it displays all

Can you help me regrading this issue?
Thanks in advance for help

Offline

#2 02 Jun 2014 08:09

bluesxman
Member
From: UK
Registered: 29 Dec 2006
Posts: 1,129

Re: extract only match string

The problem is with the way "findstr" works; it is a partial (and flawed) implementation of regular expressions.

In this case you're experiencing one of the more annoying "features".  From the built in help:

Use spaces to separate multiple search strings unless the argument is prefixed
with /C.  For example, 'FINDSTR "hello there" x.y' searches for "hello" or
"there" in file x.y.  'FINDSTR /C:"hello there" x.y' searches for
"hello there" in file x.y.

Thus for this particular search, you must do:

findstr /c:"Table MA_NWW_WW_DAT" "termination_problem.txt" 

Or you could just use "find":

find "Table MA_NWW_WW_DAT" "termination_problem.txt"

cmd | *sh | ruby | chef

Offline

#3 02 Jun 2014 08:43

platon39
Member
Registered: 24 Feb 2014
Posts: 30

Re: extract only match string

Hi,

i tried with

findstr "\<MA_NWW_WW_DAT\>"  "termination_problem.txt" 

and it worked also.


H:\Import_checks\work\script\mst\tech_corr>findstr "\<MA_NWW_WW_DAT\>"  "termination_problem.txt"
2       101199303 \ TR_MCC \ 3 \ ALERT: TERMINATION PROBLEM \   \ Table MA_NWW_WW_DAT Key ART_NR/SPRACH_KZ/Count \   \ 408024/ENG/2
15      101197074 \ BE_MCC \ 3 \ ALERT: TERMINATION PROBLEM \   \ Table MA_NWW_WW_DAT Key ART_NR/SPRACH_KZ/Count \ 3 \ 412454/GER/2

Thanks for help .

Last edited by platon39 (02 Jun 2014 11:01)

Offline

Board footer

Powered by