split string


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting split string
# 1  
Old 08-16-2011
Network 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 look for subject'n'= (where 'n' is number). I want to ignore if there is any characters between subject and =.
# 2  
Old 08-16-2011
Try:
Code:
echo 'subject1=10;subject2=30;subject3=40;subjectcode=10001;../..' |
tr ';' '\n' | sed -n 's/subject[0-9]\+=\([0-9]\+\)/\1/p'
10
30
40

# 3  
Old 08-16-2011
Code:
 
$ nawk -F"[=;]" '{for(i=2;i<=NF;i=i+2)print $i}' test                                                                                              
10
30
40
10001

 
$ cat test 
subject1=10;subject2=30;subject3=40;subjectcode=10001;

---------- Post updated at 11:01 AM ---------- Previous update was at 10:55 AM ----------

i didnt read your question properly... try the below ( test is the input file name )

Code:
 
$ nawk -F"[=;]" '{for(i=1;i<=NF;i++){ if($i~/subject[0-9]/) {print $(i+1)}}}' test                                                                 
10
30
40

# 4  
Old 08-16-2011
Code:
IFS=';'
set -f
set -- $string
set +f

for n
do
  case $n in
    subject*[!0-9]*=*) continue ;;
    subject*) printf "%s\n" "${n#*=}" ;;
  esac
done

# 5  
Old 08-16-2011
Another option

Code:
awk -F"=|;" '{ for(i=2;i<=NF;i=i+2){print $i} }' infile

regards,
Ahamed

---------- Post updated at 10:25 PM ---------- Previous update was at 10:23 PM ----------

Ooops... please ignore the above code... I missed out the actual requirement...
My code also will boil down to itkamaraj's code... Smilie

regards,
Ahamed
# 6  
Old 08-16-2011
Thanx a lot for Everyone

Thanks a lot...
It Worked Smilie Smilie Smilie
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

Split the string in perl

Hi All, How to split the string KAR_Celltick_Ban_GSMGW3 and want to pickup the third filed. Sometime the string may be "KAR_Celltick_Ban" like this Thanks in advance (1 Reply)
Discussion started by: sujit_kashyap
1 Replies

3. 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

4. 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

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. 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

7. 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

8. 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

9. 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

10. Shell Programming and Scripting

split a file at a specified string

to find log files modification, i want to select all the lines of a file behind a string (found by grep ?). :rolleyes: (6 Replies)
Discussion started by: jpl35
6 Replies
Login or Register to Ask a Question