1

次の文字列と一致させるための正しい正規表現は何ですか?

  • 新しい行の先頭から任意の 16 文字。
  • コロンが続く:

私はこれを思いつきましたが、それで十分かどうかわかりません: .{16}:

4

4 に答える 4

5

行頭がありません^:

^.{16}:
于 2012-08-09T19:07:40.870 に答える
3

私が提供する唯一の修正は次のとおりです。

^.{16}:

キャレット記号 ( ^) は、行の先頭に固定されます。

于 2012-08-09T19:08:56.847 に答える
1

PHP では、次のようになります。

/^([^:]{16}):/m

いくつかの詳細:

  • ^行頭
  • /正規表現の区切り文字です
  • [^:]以外の任意の文字をラップします:。「。」は使いません。16 文字の間に「:」がある場合の問題を回避するためです。とにかくキャッチしたい場合は、「。」を使用してください。あなたがやっているように。
  • {16}これを16回繰り返します。
  • ([^:]{16})括弧は一致する値をキャッチします。使用している言語に応じて、後で「\」または「$」で取得できる参照に保存されます。
  • mこれが魔法です。「m」は複数行修飾子です。これにより、式がテキストのすべての行で実行されるようになります。JavaScript では、この修飾子は "g" (グローバル) です。
  • それが役に立てば幸い!

    于 2012-08-09T19:24:24.803 に答える
    1

    それは次のようになります。

    ^(.{16})[?=:]
    
    . almost any character
    {n} How many
    [?=X] Followed by
    

    ^.{16}:

    于 2012-08-09T19:09:01.463 に答える