Sponsored Content
Top Forums UNIX for Advanced & Expert Users Grep character classes '\w' '\d' Post 302399377 by pludi on Saturday 27th of February 2010 03:49:05 PM
Old 02-27-2010
There are multiple variants of regular expression. There are the original POSIX basic regex, with a very simple syntax. Then there's the POSIX extended regex, which is basically basic POSIX regex with a simpler usage. Both support character classes like [:alnum:], [:blank:] and the like, as a means of saving characters & improving readability.

A lot more powerful are Perl Compatible Regular Expressions (PCRE), as copied by almost any modern regex engine (Java, Ruby, PHP, .Net, ...). That introduced backslash sequences as a means for writing character classes even shorter, eg \d for any single digit, \W for any non-word character, ...

Now you're saying that the regex don't work for you. Could you give an example of what's your input, and what command line you've tried? Maybe the issue isn't with the regex, but the way it's used.
 

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

Grep for X character on a word

How can I grep for a certain letter that only shows on the 3rd letter or character. ex: ASGHDY SHTYRD SDTYRD IGIKGD I only want the TY part of the 3rd character so output would only be SHTYRD and DDTYRD - I only want the TY on the 3rd character. THANKS (5 Replies)
Discussion started by: jjoves
5 Replies

2. Programming

how to use classes in c ?!?!?

Hi, I've tried to use classes in my program, but the compiler simply gives an error on the word class . Am I the only one with this problem ? I have no idea how to use classes in c in linux environment(suse). If you've got any idea what should I do I would be very thankful. Thanks to ya all !... (4 Replies)
Discussion started by: atticus
4 Replies

3. UNIX for Advanced & Expert Users

grep in special character

All, I am trying to grep "-----" from a test when i use this i am getting the below error. What is the reason for this ?????... How can i over come this ##) echo "----------------- test_sys_job -----------------" | grep "-----------------" grep: illegal option -- - grep: illegal... (6 Replies)
Discussion started by: arunkumar_mca
6 Replies

4. Programming

Use of C++ Classes

I was wondering if I could put the section at the beginning rather than at the end before the definition of the class. const REAL ModMisfit::DefMinDT = 0.01; const REAL ModMisfit::DefSigma0 = 0.01; const double ModMisfit::DefDAngSh = 2; const REAL ModMisfit::DefKBeta = 5;... (2 Replies)
Discussion started by: kristinu
2 Replies

5. Shell Programming and Scripting

grep ^ as a character

I have a pwd file with a number of errors like: ^grep ^ I get the whole file since it thinks it's new line. Should I \ to escape this? (4 Replies)
Discussion started by: dba_frog
4 Replies

6. Programming

c++ help with class(new to classes)

Hello there, I am new to using classes, and have been having so many problems. I don't want to go to my teacher if I don't have to, because it is always my luck that it is something easy that I just overlooked somehow. I have been working on this for 3 days and I can't get it to read from a file. ... (1 Reply)
Discussion started by: KingAroan
1 Replies

7. UNIX for Dummies Questions & Answers

How to grep until a certain character?

Hi, so I have a file containing many repetitions of the pattern block displayed below: >NM_13489075 ACGUGCUAGCUUAGCGA AGCUAGCUGAUCGAUGC ACGUAGCUAGCUGAUCG GAUCGA >NM_13489023 ACGUGCUAGCUUAGCGA AGCUAGCUGAUCGAUGC ACGUAGCUAGCUGAUCG GAAGUC I was wondering how to grep, for example, a... (5 Replies)
Discussion started by: ShiGua
5 Replies

8. UNIX for Dummies Questions & Answers

Grep character æ

Hello, Im trying check if character "æ" (alt+145) is included or not in some files. To do that I have written a scrip with vi that basically is a loop of all these compressed files and something like: zcat $file | grep æ >> logtocheck.out ; The problem is that æ is translated to something like... (3 Replies)
Discussion started by: ngb
3 Replies

9. Shell Programming and Scripting

Grep -F for special character

a='CASH$$A' /usr/xpg4/bin/grep -F "$a" *.txt It is not able to grep CASH$$A string as it contains special character $$. I also tried with /usr/xpg4/bin/grep -F '$a' *.txt but still not working. I have to assign CASH$$A to a variable and serach that variable..i dont want to search the... (8 Replies)
Discussion started by: millan
8 Replies

10. Shell Programming and Scripting

How to grep only some part of character?

Hi, I have log : # cat log $ cat 4 2014092014 2014102014 2014112023 2014123014 2014010100 2014010101 2014010102 2014010103 2014010104 2014020123 2014020115 2014020116 (3 Replies)
Discussion started by: justbow
3 Replies
regcmp(3)						     Library Functions Manual							 regcmp(3)

NAME
regcmp, regex - Compile and execute regular expression LIBRARY
Standard C Library (libc.so, libc. a) SYNOPSIS
#include <libgen.h> char *regcmp( const char *string1, ... /*, (char *)0 */); char *regex( const char *re, const char *subject, ... ); STANDARDS
Interfaces documented on this reference page conform to industry standards as follows: regcmp(), regex(): XPG4-UNIX Refer to the standards(5) reference page for more information about industry standards and associated tags. PARAMETERS
Points to the string that is to be matched or converted. Points to a compiled regular expression string. Points to the string that is to be matched against re. DESCRIPTION
The regcmp() function compiles a regular expression consisting of the concatenated arguments and returns a pointer to the compiled form. The end of arguments is indicated by a null pointer. The malloc() function is used to create space for the compiled form. It is the responsibility of the process to free unneeded space so allocated. A null pointer returned from regcmp() indicates an invalid argument. The regex() function executes a compiled pattern against the subject string. Additional arguments of type char must be passed to receive matched subexpressions back. A global character pointer, __loc1, points to the first matched character in the subject string. The regcmp() and regex() functions support the simple regular expressions which are defined in the grep(1) reference page, but the syntax and semantics are slightly different. The following are the valid symbols and their associated meanings: The left and right bracket, asterisk, period, and circumflex symbols retain their meanings as defined in the grep(1) reference page. A dollar sign matches the end of the string; matches a new line. Used within brackets, the hyphen signifies an ASCII character range. For example [a-z] is equivalent to [abcd...xyz]. The - (hyphen) can represent itself only if used as the first or last character. For example, the character class expression []-] matches the characters ] (right bracket) and - (hyphen). A regular expression followed by a + (plus sign) means one or more times. For example, [0-9]+ is equivalent to [0-9][0-9]*. Integer values enclosed in {} braces indicate the number of times the pre- ceding regular expression can be applied. The value m is the minimum number and u is a number, less than 256, which is the maximum. The syntax {m} indicates the exact number of times the regular expression can be applied. The syntax {m,} is analogous to {m,infinity}. The + (plus sign) and * (asterisk) operations are equivalent to {1,} and {0,}, respectively. The value of the enclosed regular expression is returned. The value is stored in the (n+1)th argument following the subject argument. A maximum of ten enclosed regular expressions are allowed. The regex() function makes its assignments unconditionally. Parentheses are used for grouping. An operator, such as *, +, or {}, can work on a single character or a regular expression enclosed in parentheses. For example, (a*(cb+)*)$0. Since all of the symbols defined above are special characters, they must be escaped to be used as themselves. NOTES
The regcmp() and regex() interfaces are scheduled to be withdrawn from a future version of the X/Open CAE Specification. These interfaces are obsolete; they are guaranteed to function properly only in the C/POSIX locale and so should be avoided. Use the POSIX regcomp() interface instead of regcmp() and regex(). RETURN VALUES
Upon successful completion, the regcmp() function returns a pointer to the compiled regular expression. Otherwise, a null pointer is returned and errno may be set to indicate the error. Upon successful completion, the regex() function returns a pointer to the next unmatched character in the subject string. Otherwise, a null pointer is returned. RELATED INFORMATION
Commands: grep(1) Functions: malloc(3), regcomp(3) Standards: standards(5) delim off regcmp(3)
All times are GMT -4. The time now is 06:06 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy