标签: regex
此正则表达式匹配第一个分号:
^[^;]*;
但是,我想匹配第一个分号OR冒号。我怎么能这样做?
答案 0 :(得分:3)
使用non-greedy形式的正则表达式。
^.*?[:;]
如果在 - 之间包含任何换行符,则添加dotall修饰符,
(?s)^.*?[:;]
答案 1 :(得分:2)
只需在您提供的模式中的否定字符类中添加要停止的字符(在您的情况下为冒号):
^[^;:]*
此正则表达式将匹配除;:以外的任何数量的字符,从字符串的开头开始
;:
ps:这是另一种方式,比Raj更接近你的模式(希望你更容易理解)