How to split string in someinteresting cases?


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting How to split string in someinteresting cases?
# 1  
Old 03-03-2017
How to split string in someinteresting cases?

I have a variable
Code:
var=safe_alloc_TBA_details_TXXXXXX_YYYYMMDDhhmmss.csv

I want to get a part safe_alloc_TBA_details_T
If I do :
Code:
PR=`echo "$var" | awk -F'_' '{for (i=1; i<NF; i++) printf("%s_", $i)}'`

Then echo "$PR = safe_alloc_TBA_details_"
How can I cut the string so that get it safe_alloc_TBA_details_T?


Moderator's Comments:
Mod Comment Please use CODE tags as required by forum rules!

Last edited by RudiC; 03-03-2017 at 01:29 PM.. Reason: Added CODE tags.
# 2  
Old 03-03-2017
Like so?
Code:
echo ${var%${var#*_*_*_*_?}}
safe_alloc_TBA_details_T

# 3  
Old 03-03-2017
RudiC,
I don't know amount of delimiters. It can be 4, 5 7, may be 2. I need some generic regular expression

Thanks
# 4  
Old 03-03-2017
Quote:
Originally Posted by digioleg54
RudiC,
I don't know amount of delimiters. It can be 4, 5 7, may be 2. I need some generic regular expression

Thanks
what can be assumed constant in this pattern/string?
Code:
safe_alloc_TBA_details_TXXXXXX_YYYYMMDDhhmmss.csv

will this help?
Code:
echo 'safe_alloc_TBA_details_TXXXXXX_YYYYMMDDhhmmss.csv' | sed 's/\(.*_T\)[^_][^_]*_.*csv$/\1/'


Last edited by vgersh99; 03-03-2017 at 03:25 PM..
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. UNIX for Beginners Questions & Answers

How to split a string into array?

value=malayalam # i need to store the value in an array by splitting the character #the output i need is m a l a y a l a m Please use CODE tags for output data as well as required by forum rules! (5 Replies)
Discussion started by: Meeran Rizvi
5 Replies

2. Shell Programming and Scripting

Need to split a string

Hi, We have a SunOS 5.10 Generic_142900-13 sun4v sparc SUNW,T5240. I'm trying to find a way to split a string into 2 variables. Ex: parm1="192.168.1.101/parent/child" What I need to do is split the string above into: host="192.168.1.101" location="parent/child" I saw the... (3 Replies)
Discussion started by: adshocker
3 Replies

3. Shell Programming and Scripting

split string

I am trying to get some data from a file and print it on the same line. I have a script that gets the body of emails and display it, but i want it to display each emails body in one line no matter how big it is. eg insted of this email1: bla bla bla bla bla bla bal email2: bla bla bla... (7 Replies)
Discussion started by: maddog21
7 Replies

4. Shell Programming and Scripting

split string

Hi I am facing a problem in spitting a string. Here is the string -------------------- subject1=10;subject2=30;subject3=40;subjectcode=10001;... Now, I want only marks not the subject code. (there can be 'n' subjects) ie. 10 30 40 My doubt ---------- How do I... (5 Replies)
Discussion started by: jionnet
5 Replies

5. Shell Programming and Scripting

Split string

Hi, can we split a number like this.. if i have something like 85743975945738, can it be converted as 8574-3975-945738 in ksh shell using single command... Thanks! (5 Replies)
Discussion started by: nram_krishna@ya
5 Replies

6. UNIX for Dummies Questions & Answers

Search for a string with different cases

Hi Guys, I am using the following command in a script. cat $sql_file_path"/"${sql_file_list} | grep "ABCDE" but it returns only exactly matching lines (ABCDE) how can i modify this single line so it will return if it finds a matching string with any case. eg: Abcde, abCDe, abcdeE,... (4 Replies)
Discussion started by: mwrg
4 Replies

7. Shell Programming and Scripting

split the string

I need to split the string msu1_2 It should be generic for any string of the form msu<digits>_<digits> so that i get $X =1 and $Y = 2 Please help Thanks (5 Replies)
Discussion started by: asth
5 Replies

8. Shell Programming and Scripting

Split A String

Hi, I am new to scripting and need help splitting a string using space as the delimiter. How can I do that? I want the result to be stored in an Array. I tried using set -A arr $(echo $FILE) echo $arr The result of the above was ''. Thanks. (2 Replies)
Discussion started by: newbie187
2 Replies

9. Shell Programming and Scripting

split string help

could anyone help in running split cmd split("String1,outputArray,"delimiter); with sample script?. for eg i have abc-def-ghi-sdf- my ultimate aim of asking this is i have a string containing hypens, i want to get the string before last n(2) Hypens (4 Replies)
Discussion started by: senthilk615
4 Replies

10. Shell Programming and Scripting

split a string

Hi I have a script that loops though lines of a file and reads each line in to a variable ($LINE). I want to look at the line and split it into it's constituent parts. e.g. a line might be "This is a string" I want to then have variables set to each element thus: A=This B=is C=a... (3 Replies)
Discussion started by: gazingdown
3 Replies
Login or Register to Ask a Question