天天看點

使用awk提取字元串中的數字或字母

1.提取字元串中的數字 

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

<code>$ </code><code>echo</code> <code>'dsFUs34tg*fs5a%8ar%$#@'</code> <code>|</code><code>awk</code> <code>-F </code><code>""</code> <code>'</code>

<code>{</code>

<code>  </code><code>for</code><code>(i=1;i&lt;=NF;i++) </code>

<code>  </code><code>{  </code>

<code>    </code><code>if</code> <code>($i ~ /[[:digit:]]/)     </code>

<code>    </code><code>{</code>

<code>      </code><code>str=$i</code>

<code>      </code><code>str1=(str1 str)</code>

<code>    </code><code>}  </code>

<code>  </code><code>} </code>

<code>  </code><code>print str1</code>

<code>}'</code>

<code>輸出</code>

<code>3458</code>

<code>或</code>

<code>    </code><code>if</code> <code>($i ~ /[0-9]/)             </code>

2.提取字元串中的小寫字母

<code>    </code><code>if</code> <code>($i ~ /[[:lower:]]/)         </code>

<code>dsstgfsaar</code>

3.提取字元串中的大寫字母

<code>    </code><code>if</code> <code>($i ~ /[[:upper:]]/)         </code>

<code>FU</code>

4.提取字元串中的字母(不區分大小寫)

法一:

<code>    </code><code>if</code> <code>($i ~ /[a-z]/)                                                                 </code>

<code>dsFUstgfsaar</code>

<code>法二:</code>

<code>    </code><code>if</code> <code>($i ~ /[[:alpha:]]/)            </code>

<code>輸出:</code>

5.提取字元串中的非數字字元

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

<code>法一:</code>

<code>    </code><code>if</code> <code>($i ~ /[^0-9]/)       </code>

<code>dsFUstg*fsa%ar%$</code><code>#@</code>

<code>    </code><code>if</code> <code>($i !~ /[0-9]/)     </code>

<code>法三:</code>

<code>echo</code> <code>'dsFUs34tg*fs5a%8ar%$#@'</code> <code>|</code><code>awk</code> <code>-F </code><code>""</code> <code>'</code>

<code>    </code><code>if</code> <code>($i ~ /[^[:digit:]]/)        </code>

6.提取字元串中的除數字字母外的字元

<code>    </code><code>if</code> <code>($i ~ /[^0-9a-zA-Z]/)         </code>

<code>*%%$</code><code>#@</code>

<code>    </code><code>if</code> <code>($i ~ /[^[:alnum:]]/)         </code>

<code>    </code><code>if</code> <code>($i ~ /[^[:digit:]]/ &amp;&amp; $i ~ /[^[:lower:]]/ &amp;&amp; $i ~ /[^[:upper:]]/)         </code>

<code></code>

本文轉自 xoyabc 51CTO部落格,原文連結:http://blog.51cto.com/xoyabc/1855224,如需轉載請自行聯系原作者