这个是神码意思?grep '^[:alpha:]'
发表于 : 2012-08-28 18:12
grep '^[:alpha:]'
alpha表示字母吗?还是:alpha:表示字母?cnkilior 写了:字幕开头
代码: 全选
Character Classes and Bracket Expressions
A bracket expression is a list of characters enclosed by [ and ]. It
matches any single character in that list; if the first character of the
list is the caret ^ then it matches any character not in the list. For
example, the regular expression [0123456789] matches any single digit.
Within a bracket expression, a range expression consists of two characters
separated by a hyphen. It matches any single character that sorts between
the two characters, inclusive, using the locale's collating sequence and
character set. For example, in the default C locale, [a-d] is equivalent
to [abcd]. Many locales sort characters in dictionary order, and in these
locales [a-d] is typically not equivalent to [abcd]; it might be equivalent
to [aBbCcDd], for example. To obtain the traditional interpretation of
bracket expressions, you can use the C locale by setting the LC_ALL
environment variable to the value C.
Finally, certain named classes of characters are predefined within bracket
expressions, as follows. Their names are self explanatory, and they are
[:alnum:], [:alpha:], [:cntrl:], [:digit:], [:graph:], [:lower:],
[:print:], [:punct:], [:space:], [:upper:], and [:xdigit:]. For example,
[[:alnum:]] means the character class of numbers and letters in the current
locale. In the C locale and ASCII character set encoding, this is the same
as [0-9A-Za-z]. (Note that the brackets in these class names are part of
the symbolic names, and must be included in addition to the brackets
delimiting the bracket expression.) Most meta-characters lose their
special meaning inside bracket expressions. To include a literal ] place
it first in the list. Similarly, to include a literal ^ place it anywhere
but first. Finally, to include a literal - place it last.
代码: 全选
● /bin/grep '^[:alpha:]' <<< 'ls'
/bin/grep: 字符类的语法是 [[:space:]],而非 [:space:]
试了下 [:alnum:], [:alpha:],好像都可以的样子tusooa 写了:以下摘录自grep(1),版权由manpage指定。代码: 全选
Character Classes and Bracket Expressions A bracket expression is a list of characters enclosed by [ and ]. It matches any single character in that list; if the first character of the list is the caret ^ then it matches any character not in the list. For example, the regular expression [0123456789] matches any single digit. Within a bracket expression, a range expression consists of two characters separated by a hyphen. It matches any single character that sorts between the two characters, inclusive, using the locale's collating sequence and character set. For example, in the default C locale, [a-d] is equivalent to [abcd]. Many locales sort characters in dictionary order, and in these locales [a-d] is typically not equivalent to [abcd]; it might be equivalent to [aBbCcDd], for example. To obtain the traditional interpretation of bracket expressions, you can use the C locale by setting the LC_ALL environment variable to the value C. Finally, certain named classes of characters are predefined within bracket expressions, as follows. Their names are self explanatory, and they are [:alnum:], [:alpha:], [:cntrl:], [:digit:], [:graph:], [:lower:], [:print:], [:punct:], [:space:], [:upper:], and [:xdigit:]. For example, [[:alnum:]] means the character class of numbers and letters in the current locale. In the C locale and ASCII character set encoding, this is the same as [0-9A-Za-z]. (Note that the brackets in these class names are part of the symbolic names, and must be included in addition to the brackets delimiting the bracket expression.) Most meta-characters lose their special meaning inside bracket expressions. To include a literal ] place it first in the list. Similarly, to include a literal ^ place it anywhere but first. Finally, to include a literal - place it last.
是[[]]13378333 写了:试了下 [:alnum:], [:alpha:],好像都可以的样子tusooa 写了:以下摘录自grep(1),版权由manpage指定。代码: 全选
Character Classes and Bracket Expressions A bracket expression is a list of characters enclosed by [ and ]. It matches any single character in that list; if the first character of the list is the caret ^ then it matches any character not in the list. For example, the regular expression [0123456789] matches any single digit. Within a bracket expression, a range expression consists of two characters separated by a hyphen. It matches any single character that sorts between the two characters, inclusive, using the locale's collating sequence and character set. For example, in the default C locale, [a-d] is equivalent to [abcd]. Many locales sort characters in dictionary order, and in these locales [a-d] is typically not equivalent to [abcd]; it might be equivalent to [aBbCcDd], for example. To obtain the traditional interpretation of bracket expressions, you can use the C locale by setting the LC_ALL environment variable to the value C. Finally, certain named classes of characters are predefined within bracket expressions, as follows. Their names are self explanatory, and they are [:alnum:], [:alpha:], [:cntrl:], [:digit:], [:graph:], [:lower:], [:print:], [:punct:], [:space:], [:upper:], and [:xdigit:]. For example, [[:alnum:]] means the character class of numbers and letters in the current locale. In the C locale and ASCII character set encoding, this is the same as [0-9A-Za-z]. (Note that the brackets in these class names are part of the symbolic names, and must be included in addition to the brackets delimiting the bracket expression.) Most meta-characters lose their special meaning inside bracket expressions. To include a literal ] place it first in the list. Similarly, to include a literal ^ place it anywhere but first. Finally, to include a literal - place it last.