我正在寻找一个模式,匹配所有的东西,直到第一次出现一个特定的字符,说一个“;”-分号。
我这样写道:
/^(.*);/
但它实际上匹配所有内容(包括分号),直到最后出现一个分号。
我正在寻找一个模式,匹配所有的东西,直到第一次出现一个特定的字符,说一个“;”-分号。
我这样写道:
/^(.*);/
但它实际上匹配所有内容(包括分号),直到最后出现一个分号。
当前回答
这适用于从一行开始到第一个单词的内容,
/^.*?([^\s]+)/gm
其他回答
会;
/^(.*?);/
工作吗?
的吗?是惰性操作符,因此正则表达式在匹配;之前抓取尽可能少的内容。
尝试/ [^;]* /
这是一个否定字符类。
示例文本:
"this is a test sentence; to prove this regex; that is g;iven below"
例如,如果我们有上面的示例文本,正则表达式/(.*?\;)/将给出第一次出现分号(;)之前的所有内容,包括分号:"this is a test sentence;"
尝试/ [^;]* /
谷歌正则表达式字符类的详细信息。
这些建议的答案对我都不起作用。(例如在notepad++中) 但
^.*?(?=\;)
did.