1

私は次の行に一致させようとしています:

801. Our origination charge (Includes Originat ion Point (s) %  or $ ) (f rom GFE #1)$ 1,169.00

私はこの正規表現を作成しました:

.*801\..*\(f\s?rom.*$\s?(.*)

これがすべきことは次のとおりです。

  1. 801まで何でも一致します。
  2. (f \ s?rom
  3. $まで何でも一致
  4. オプションスペース
  5. ラインラインの残りの部分と一致します

これが私の文字列を壊すと私が信じる方法は次のようです:

  1. 801。
  2. オリジネーション料金(オリジネーションポイント(s)%または$を含む)
  3. (GRE#1から
  4. (なし)
  5. 1,169.00

ただし、そうではありません。私の正規表現はこの文字列と一致しません。なぜ何かアイデアはありますか?

4

2 に答える 2

7

ドル記号をエスケープします$。これは行末アンカーです。

.*801\..*\(f\s?rom.*\$\s?(.*)
于 2012-12-06T19:48:50.243 に答える
1
。*801\ .. * \(f \ s?rom。* \ $ \ s?。*

$文字をエスケープします。最後に角かっこを削除します。この正規表現は文字列と完全に一致します。

于 2012-12-06T22:44:37.197 に答える