私は正規表現にかなり慣れていません。複数行のテキストでスペースを置き換える必要があります。置換規則は次のとおりです。
- 行頭のすべてのスペースを非改行スペース (
) に置き換えます。 - 繰り返されるスペース (複数のスペースをまとめたもの) のインスタンスを、同じ数の改行なしスペースに置き換えます。
- 行頭にない単一のスペースはそのまま残ります。
Regex Coachを使用してマッチング パターンを作成しました。
/( ){2,}|^( )/
次の入力テキストがあるとします。
asdasd asdasd asdas1
asda234 4545 54
34545 345 34534
34 345
PHP 正規表現置換関数 (のようなpreg_replace()
) を使用して、この出力を取得したい:
asdasd asdasd  asdas1
 asda234 4545    54
  34545 345  34534
34 345
正規表現を使用して単純なテキスト置換を行うことには満足していますが、希望する出力を得るために一致内で複数回置換する方法を理解するのに苦労しています。