473,398 Members | 2,335 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,398 software developers and data experts.

Splitting a string!

Hi,


How to split this string:
I wanted the filename and directory path in two different variables.
I tried this, but it doesn't work


Expand|Select|Wrap|Line Numbers
  1.  
  2.  
  3. my($filename, $directories, $suffix) = fileparse("C:\WM603\PUBLIC\stdlib.h");
  4.  
  5. print "<br>Filename  : " . $filename    . "\n";
  6. print "<br>Directory : " . $directories . "\n<br><br><br>";
  7.  
  8.  

My output is:

Filename : C:WM603PUBLICstdlib.h
Directory : ./

Any help is appreciated


Thanks,


Ravi
Jul 17 '08 #1
2 1406
eWish
971 Expert 512MB
Have a look at File::Basename.

--Kevin
Jul 17 '08 #2
KevinADC
4,059 Expert 2GB
Hi,


How to split this string:
I wanted the filename and directory path in two different variables.
I tried this, but it doesn't work


Expand|Select|Wrap|Line Numbers
  1.  
  2.  
  3. my($filename, $directories, $suffix) = fileparse("C:\WM603\PUBLIC\stdlib.h");
  4.  
  5. print "<br>Filename  : " . $filename    . "\n";
  6. print "<br>Directory : " . $directories . "\n<br><br><br>";
  7.  
  8.  

My output is:

Filename : C:WM603PUBLICstdlib.h
Directory : ./

Any help is appreciated


Thanks,


Ravi

You did not read the File::Basename documentation very well. Plus backslashes inside a double-quoted string have the danger of being interpolated as meta characters, although I don't think \W or \P or \s are a problem. Still, you should use forward slashes even when using Windows in your directory paths and use single-quotes unless there is a varaible or meta character inside the string that needs to be interpolated and expanded.

Expand|Select|Wrap|Line Numbers
  1.  
  2. use File::Basename;
  3. my($filename, $directories, $suffix) = fileparse('C:/WM603/PUBLIC/stdlib.h', qr/\.(.*)$/);
  4.  
  5. print "<br>Filename  :  $filename\n";
  6. print "<br>Directory : $directories\n";
  7. print "<br>Suffix : $suffix\n"; 
  8.  
  9.  
Jul 18 '08 #3

Sign in to post your reply or Sign up for a free account.

Similar topics

6
by: qwweeeit | last post by:
Splitting with RE has (for me!) misterious behaviour! I want to get the words from this string: s= 'This+(that)= a.string!!!' in a list like that considering "a.string" as a word. Python...
5
by: fatted | last post by:
I'm trying to write a function which splits a string (possibly multiple times) on a particular character and returns the strings which has been split. What I have below is kind of (oh dear!)...
4
by: JeffM | last post by:
Quick C# question: I have comma delimited values in a string array that I want to pass to seperate variables. Any tips on splitting the array? Thanks in advance! JM
2
by: Trint Smith | last post by:
Ok, My program has been formating .txt files for input into sql server and ran into a problem...the .txt is an export from an accounting package and is only supposed to contain comas (,) between...
20
by: Opettaja | last post by:
I am new to c# and I am currently trying to make a program to retrieve Battlefield 2 game stats from the gamespy servers. I have got it so I can retrieve the data but I do not know how to cut up...
2
by: CharChabil | last post by:
Using Vb.net 2005, I want to read each part in this string in an array (splitting the string) ----------- A1/EXT "BK82 LB73 21233" 105 061018 1804 ----------- That Code that i used is as follow:...
6
by: HMS Surprise | last post by:
The string s below has single and double qoutes in it. For testing I surrounded it with triple single quotes. I want to split off the portion before the first \, but my split that works with...
2
by: shadow_ | last post by:
Hi i m new at C and trying to write a parser and a string class. Basicly program will read data from file and splits it into lines then lines to words. i used strtok function for splitting data to...
4
by: yogi_bear_79 | last post by:
I have a simple string (i.e. February 27, 2008) that I need to split into three parts. The month, day, and year. Splitting into a string array would work, and I could convert day and years to...
37
by: xyz | last post by:
I have a string 16:23:18.659343 131.188.37.230.22 131.188.37.59.1398 tcp 168 for example lets say for the above string 16:23:18.659343 -- time 131.188.37.230 -- srcaddress 22 ...
0
by: Charles Arthur | last post by:
How do i turn on java script on a villaon, callus and itel keypad mobile phone
0
BarryA
by: BarryA | last post by:
What are the essential steps and strategies outlined in the Data Structures and Algorithms (DSA) roadmap for aspiring data scientists? How can individuals effectively utilize this roadmap to progress...
1
by: Sonnysonu | last post by:
This is the data of csv file 1 2 3 1 2 3 1 2 3 1 2 3 2 3 2 3 3 the lengths should be different i have to store the data by column-wise with in the specific length. suppose the i have to...
0
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can...
0
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers,...
0
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven...
0
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows...
0
agi2029
by: agi2029 | last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing,...
0
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome a new...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.