由不由星号引导的冒号分割

Jac*_*ill 2 regex objective-c

我是使用正则表达式的初学者,我正在寻找一种模式,该模式将字符串除以前面没有星号的冒号.

我发现以下模式我认为会起作用,但不会.

[^:]+\\*:[^:]+
Run Code Online (Sandbox Code Playgroud)

(\*转义为在Objective-C编译器中工作)

我需要改变什么?

Roh*_*ain 6

你需要使用负面的后视:

(?<![*]):
Run Code Online (Sandbox Code Playgroud)

这个正则表达式匹配一个colon(:)前面没有 - > (?<!..)a *- >的正则表达式[*].*在字符类中使用它会失去它的含义,并且只匹配一个*.