文字列内の 2 つの「キーワード」の間で文字列を書き換える際に問題が発生しています。問題の正規表現パターンは次のとおりです。
modify = Regex.Replace(modify, "FEW([0-9]{3})", "few clouds at $1.");
modify = Regex.Replace(modify, @"(?s)(?<=[0-9]{2}SM).+0([0-9]{1})0.+?(?=[0-9]{2}/[0-9]{2})", "$2 thousand");
基本的に、METAR、特に「FEW070」で雲の層を取得する必要があります
KLAX 032109Z 26014KT 10SM FEW070 SCT120 BKN220 21/17 A2986 RMK AO2
7000で数雲を返してほしいのですが、070で数雲を返してしまいます。
私はこのプログラムを使用して正規表現をテストしてきましたが、上記のパターンを使用すると、本来のように 7 が返されます。