回答編集履歴
1
修正
answer
CHANGED
@@ -1,9 +1,14 @@
|
|
1
1
|
こういう時は、`grep -o`を使います。
|
2
|
-
フィールドに英数字しか含まれないのであれば、単語境界`\b`を使って簡単に書けます。
|
2
|
+
フィールドに英数字しか含まれないのであれば、単語境界`\b`を使って簡単に書けます。**(追記に訂正有り)**
|
3
3
|
```Bash
|
4
4
|
grep -o '\ba\w*\b'
|
5
5
|
```
|
6
6
|
記号とかも含まれるなら、Perl拡張正規表現で、行頭・行末・空白文字を後読み・先読みさせて、
|
7
7
|
```Bash
|
8
8
|
grep -P -o '(?<=^|\s)a\S*(?=$|\s)'
|
9
|
-
```
|
9
|
+
```
|
10
|
+
#追記
|
11
|
+
先に下の方を作ってから上のを書いたので、`\b`を使ってしまいましたが、上のはこれでいいですね。
|
12
|
+
```Bash
|
13
|
+
grep -o -w 'a\w*'
|
14
|
+
```
|