2

私は正規表現の初心者で、アスタリスクが前に付いていないコロンで文字列を分割するパターンを探しています。

うまくいくと思っていた次のパターンを見つけましたが、うまくいきません。

[^:]+\\*:[^:]+

(これ\*は、Objective-C コンパイラで動作するようにエスケープされています)

何を変更する必要がありますか?

4

2 に答える 2

6

負の後読みを使用する必要があります。

(?<![*]):

この正規表現は、 -> a ->colon(:)が前に付いていないa に一致します。文字クラス内で使用すると、その意味が失われ、 .(?<!..)*[*]**

于 2013-02-11T20:59:11.287 に答える
0

アスタリスクではない単一の文字は、次のように表すことができます[^*]。これにより、アスタリスクが文字クラスに入れられますが、特別な意味はありません。オープニングブレースの直後のカレットは、文字クラスを無効にします。

アスタリスク以外のものが前に付いているコロンの一致は、次のように簡単に書くことができます。[^*]:

ロケーションの目的でコロンだけを取得するには、それを単独でグループに入れます。[^*](:)

于 2013-02-11T21:10:30.987 に答える