Hi,
I have a field with fields as below:
name
--------
abcd - xyz
cdef - xyz
adfeq - xyz
I want to trim "- xyz" from all the rows and display result as below
name
-------
abcd
cdef
adfeq
How to do this using eval substr
or trim
or rex
? please help me with the query
Since <space><hyphen><space>xyz
are six characters as they appear to naked eye in your text provided hence I am making adjustments to 6 characters rather than 7 which definitely will remove these six in below scenarios:
Rex with extraction:
... | rex field=yourField "^(?<yourNewField>(.*)\s+-\s+xyz)" | table yourNewField
Rex with sed replacement:
... | rex mode=sed field=yourField "s/\ \-\ xyz//g" | table yourField
Eval and substr way:
... | eval yourNewField=substr(yourField , 1, len(yourField )-6) | table yourNewField.
Since <space><hyphen><space>xyz
are six characters as they appear to naked eye in your text provided hence I am making adjustments to 6 characters rather than 7 which definitely will remove these six in below scenarios:
Rex with extraction:
... | rex field=yourField "^(?<yourNewField>(.*)\s+-\s+xyz)" | table yourNewField
Rex with sed replacement:
... | rex mode=sed field=yourField "s/\ \-\ xyz//g" | table yourField
Eval and substr way:
... | eval yourNewField=substr(yourField , 1, len(yourField )-6) | table yourNewField.
Thanks it worked perfect !!!
... | eval name=substr(name, 1, len(name)-7) | ...