メインコンテンツにスキップ
モジュール 3 · レッスン 4 / 4コース内の 12/32~10 min
モジュールのレッスン (4/4)

空行とトリミング

アンカーと m フラグを組み合わせて、2 つの非常に便利なイディオムを作成してみましょう。 空行のマッチングと開始/終了の空白のトリミング 各行の。

空行

空行は、^ と $ が一致する位置です。文字数はゼロです。 行の始まりと終わりの間。

Code
Pattern: ^$
Flag:    gm
Sample:  uno\n\ndue\n\n\ntre

一致は ゼロ幅 です。ハイライタには、次の範囲にあるマーカーが表示されます。 2 つの \n。 「空だがスペースが含まれる」行にも一致するには、次を使用します。 ^\s*$。

線をトリミングする

行の先頭または末尾の空白を削除するには、アンカー + \s クラス + 量指定子:

Code
^\s+    matches whitespace at the start of a line (can then be replaced with the empty string, module 7)
\s+$    matches whitespace at the end of a line

gm フラグを使用すると、すべての行のすべてのマージン空白を収集できます。

空行と末尾のスペースの識別

純粋な空行は、^$ (m フラグ付き) によって照合されます。ただし、一見空行の多くには、目に見えないスペースやタブが含まれています。パターン ^\\s*$ もこれらの行をインターセプトするため、データのクリーンアップがはるかに簡単になります。

試してみてください

運動#regex.m3.l4.e1
試行回数: 0読み込み中…

サンプル内のすべての空行 (2 つの改行の間にゼロ文字) を検索します。 `gm` フラグとともに `^$` を使用します。

エディターを読み込み中…
ヒントを表示

空行は、^ と $ が一致する位置です。 m フラグは必須です。

3 回の試行後に解決策が利用可能になります

復習演習

運動#regex.m3.l4.e2
試行回数: 0読み込み中…

すべての行の末尾にある空白 (改行の前にある空白文字) を見つけます。 `\\s+$` を `gm` フラグとともに使用します。

エディターを読み込み中…
ヒントを表示

\\s+ は 1 つ以上の空白文字 (タブを含む) と一致します。 gm を使用すると、各行の末尾にアンカーされます。

3 回の試行後に解決策が利用可能になります

追加の課題

運動#regex.m3.l4.e3
試行回数: 0読み込み中…

Find all lines that start with the `#` character (entire comment lines, ignoring inline comments).

エディターを読み込み中…
ヒントを表示

Use ^ at the start of the pattern to indicate that the comment character # must start the line.

3 回の試行後に解決策が利用可能になります