私は正規表現の初心者で、アスタリスクが前に付いていないコロンで文字列を分割するパターンを探しています。
うまくいくと思っていた次のパターンを見つけましたが、うまくいきません。
[^:]+\\*:[^:]+
(これ\*
は、Objective-C コンパイラで動作するようにエスケープされています)
何を変更する必要がありますか?
私は正規表現の初心者で、アスタリスクが前に付いていないコロンで文字列を分割するパターンを探しています。
うまくいくと思っていた次のパターンを見つけましたが、うまくいきません。
[^:]+\\*:[^:]+
(これ\*
は、Objective-C コンパイラで動作するようにエスケープされています)
何を変更する必要がありますか?
負の後読みを使用する必要があります。
(?<![*]):
この正規表現は、 -> a ->colon(:)
が前に付いていないa に一致します。文字クラス内で使用すると、その意味が失われ、 .(?<!..)
*
[*]
*
*
アスタリスクではない単一の文字は、次のように表すことができます[^*]
。これにより、アスタリスクが文字クラスに入れられますが、特別な意味はありません。オープニングブレースの直後のカレットは、文字クラスを無効にします。
アスタリスク以外のものが前に付いているコロンの一致は、次のように簡単に書くことができます。[^*]:
ロケーションの目的でコロンだけを取得するには、それを単独でグループに入れます。[^*](:)