Sponsored Content
Top Forums Programming How to trim the white space around a string in C program Post 302244979 by redoubtable on Thursday 9th of October 2008 04:57:25 AM
Old 10-09-2008
You could also use POSIX's regular expressions (regcomp(), regexec(), regfree()).

First you compile a regex using regcomp(), then you can match it several times to a certain string using regexec(). Finally you should free the compiled regex with regfree().

A very simple example:
Code:
#include <stdio.h>
#include <regex.h>

int
main ()
{
    regex_t reg;
    char * aaa = "          ";
    
    if (regcomp (&reg, "[^[:space:]$]", REG_EXTENDED|REG_NOSUB) != 0)
        exit(1);
    if ((regexec (&reg, aaa, 0, (regmatch_t *) NULL, 0)) == 0)
         printf ("no match\n");
    else
        printf ("match\n");
    regfree(&reg);
}

 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

How to trim space in output variable ?

Hi , I have a code like this: uid=scott password=tiger database=db01 cat >runid_val.sql<<-EOA SET ECHO OFF SET FEEDBACK OFF SET HEADING OFF SELECT trim(runid_seq.nextval) FROM dual; EXIT EOA echo `cat runid_val.sql` V_RUNID=`sqlplus -s $uid/$password@$database @runid_val.sql`... (5 Replies)
Discussion started by: vj_76
5 Replies

2. Shell Programming and Scripting

Trim white spaces using awk

Hi, I have a CSV file with footer information as below. The third value is the number of records in the file. Sometimes it contains both leading and trailing white spaces which i want to trim using awk. C,FOOTER , 00000642 C,FOOTER , 00000707 C, FOOTER,... (2 Replies)
Discussion started by: mona
2 Replies

3. Shell Programming and Scripting

stripping white space...

Hi All; Having a problem with a file.. the file contains the following data... (a snapshot) 1331F9E9DB7C2BB80EAEDE3A8F043B94,AL7 1DZ,M,50 186FDF93E1303DBA217279EC3671EA91,NG5 1JU,M,24 3783FFAF602015056A8CD21104B1AAAF,CH42 4NQ,M,17 It has 3 columns sepreated by a , the second column... (7 Replies)
Discussion started by: Zak
7 Replies

4. UNIX for Dummies Questions & Answers

SED with White Space

Dear Members, Suppose i have a variable test which stores a string as below: test='John drives+++++++++a+++++car' now i want to use sed on the above variable and replace + with a white space, so that i get echo $test should give me 'john drives a car' Between... (1 Reply)
Discussion started by: sandeep_1105
1 Replies

5. Shell Programming and Scripting

sed + white space

Hi, What sed command (if sed is the right command) can remove ALL white space from my file. I have a csv, except I want to remove all white space between commas and characters. My idea (without testing) sed 's/ //g' Is there a better way? (18 Replies)
Discussion started by: mcclunyboy
18 Replies

6. UNIX for Dummies Questions & Answers

filename with white space

our user creates a text file with a white space on the filename. this same file is transfered to unix via automation tool. i have a korn shell script that reads these files on a input directory and connects to oracle database to run the oracle procedures which will load the data from each of the... (2 Replies)
Discussion started by: wtolentino
2 Replies

7. Shell Programming and Scripting

awk - trim white space from a field / variable

Hi, Consider the data (FS = |): 1| England |end 2| New Zealand |end 3|Australia|end 4| Some Made Up Country |end 5| West Indies|end I want the output to be (i.e. without the leading and trailing white space from $2) England New Zealand Australia Some Made Up Country West... (4 Replies)
Discussion started by: Storms
4 Replies

8. Shell Programming and Scripting

Add white space

hi guys how can i add spacein file name with sed if strings have no space around dash input 19-20 ( 18-19 ) ABC-EFG output after add white space 19 - 20 (18 - 19 ) ABC - EFG thx in advance (2 Replies)
Discussion started by: mhs
2 Replies

9. Shell Programming and Scripting

Putting white Space at the end of the string

Hi Guys, Hope, you all are doing good out there. I am writing a shell script and currrint in need of your help. This is what I need to do; I have position based plain file. One of the fields is 15 character long. I need to fill that field. The problem is that the value is dynamic, it could... (4 Replies)
Discussion started by: singh.chandan18
4 Replies

10. Shell Programming and Scripting

Trim Space

In Shell, I have output of a unix command as test1 test2015 but I want it as test1 test2015 can anyone help me out. Use code tags, thanks. (3 Replies)
Discussion started by: OscarS
3 Replies
regex.h(3HEAD)							      Headers							    regex.h(3HEAD)

NAME
regex.h, regex - regular expression matching types SYNOPSIS
#include <regex.h> DESCRIPTION
The <regex.h> header defines the structures and symbolic constants used by the regcomp(), regexec(), regerror(), and regfree() functions. See regcomp(3C). The structure type regex_t contains the following member: size_t re_nsub number of parenthesized subexpressions The type size_t is defined as described in <sys/types.h>. See types.h(3HEAD). The type regoff_t is defined as a signed integer type that can hold the largest value that can be stored in either a type off_t or type ssize_t. The structure type regmatch_t contains the following members: regoff_t rm_so byte offset from start of string to start of substring regoff_t rm_eo byte offset from start of string of the first character after the end of substring Values for the cflags parameter to the regcomp function are as follows: REG_EXTENDED use extended regular expressions REG_ICASE ignore case in match REG_NOSUB report only success or fail in regexec() REG_NEWLINE change the handling of NEWLINE character Values for the eflags parameter to the regexec() function are as follows: REG_NOTBOL The circumflex character (^), when taken as a special character, does not match the beginning of string. REG_NOTEOL The dollar sign ($), when taken as a special character, does not match the end of string. The following constants are defined as error return values: REG_NOMATCH regexec() failed to match. REG_BADPAT Invalid regular expression. REG_ECOLLATE Invalid collating element referenced. REG_ECTYPE Invalid character class type referenced. REG_EESCAPE Trailing '' in pattern. REG_ESUBREG Number in fIdigit invalid or in error. REG_EBRACK "[]" imbalance. REG_EPAREN "()" or "()" imbalance. REG_EBRACE "" imbalance. REG_BADBR Content of "" invalid: not a number, number too large, more than two numbers, first larger than second. REG_ERANGE Invalid endpoint in range expression. REG_ESPACE Out of memory. REG_BADRPT '?', '*', or '+' not preceded by valid regular expression. REG_ENOSYS Reserved. ATTRIBUTES
See attributes(5) for descriptions of the following attributes: +-----------------------------+-----------------------------+ | ATTRIBUTE TYPE | ATTRIBUTE VALUE | +-----------------------------+-----------------------------+ |Interface Stability |Standard | +-----------------------------+-----------------------------+ SEE ALSO
regcomp(3C), types.h(3HEAD), attributes(5), standards(5) SunOS 5.10 9 Sep 2004 regex.h(3HEAD)
All times are GMT -4. The time now is 12:36 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy