2016-10-13 7 views
0

たとえば、複数行のファイルがあります。一部の行には文字列"SocialInsuranceNumber": "123456789",がありますが、一部はSocialInsuranceNumber": null,です。私は正規表現を使ってそのような行をすべて見つける必要があります。そして、最終的に値を:の後に置き換えます。正規表現は、見積もり内の任意の文字列に一致します。

この場合、正規表現を書く方法はありますか?

+2

てみ ' "SocialInsuranceNumber" \ sの*:\は(?:" \ D + S * "| null)、'。 –

+0

ありがとう、それは動作します。 – hardywang

答えて

1

あなたは

"SocialInsuranceNumber"\s*:\s*(?:"\d+"|null), 

regex demoを参照してください使用することができます。

パターンが一致:

  • "SocialInsuranceNumber" - リテラル文字列
  • \s*:\s* - 0+空白(\s*
  • (?:"\d+"|null)で囲まれたハイフン - 二つの選択肢を有する非捕捉: を
    • "\d+" - ",1 +数字、"
    • | - または
    • null - リテラル文字のシーケンス
  • , - リテラルのコンマ
関連する問題