正则表达式从分隔符到除了该分隔符的字符串末尾

时间:2018-01-28 06:42:23

标签: javascript regex

获得类似somedomen.com/path::targettext/with/params的字符串,并尝试仅targettext/with/params 不带 ::,或者如果找不到分隔符则不匹配。

使用/:{2}.*$返回带分隔符(::targettext/with/params

的文本

并且如果没有分隔符,则使用/(?!=::)[^:]*$返回整个字符串。

使用Javascript。

有人可以帮忙吗?

2 个答案:

答案 0 :(得分:1)

只需尝试这种模式:

/::(.*$)/ 

然后$1包含您需要的内容。

Online Demo

答案 1 :(得分:1)

你可以在javascript中试试这个,它也适用于任何语言:

.*?::(.*)$

您在第1组中获得了所需的结果



const regex = /.*?::(.*)$/gm;
const str = `somedomen.com/path::targettext/with/params`;
let m;

if((m = regex.exec(str)) !== null) {
console.log(m[1]);
}