Javascript 匹配分隔子字符串的正则表达式
我有一根类似这样的绳子Javascript 匹配分隔子字符串的正则表达式,javascript,regex,Javascript,Regex,我有一根类似这样的绳子 var test = 'Hello you have multiple L2:Me here;L3:Me not here; and some other text...'; 我想得到字符串数组 L2:Me here L3:Me not here 格式为L(一些数字):文本 什么是regex?如果这些分号总是在那里,您可以使用如下内容: var re = /L[0-9]+:[^;]+/g; var test = 'Hello you have multip
var test = 'Hello you have multiple L2:Me here;L3:Me not here; and some other text...';
我想得到字符串数组
L2:Me here
L3:Me not here
格式为L(一些数字):文本
什么是regex?如果这些分号总是在那里,您可以使用如下内容:
var re = /L[0-9]+:[^;]+/g;
var test = 'Hello you have multiple L2:Me here;L3:Me not here; and some other text...';
var match = test.match(re);
console.log(match);
// match = ["L2:Me here", "L3:Me not here"]
说明:
匹配L,后跟任意数字序列,后跟冒号(即L[0-9]+:
)“L105:
至少匹配一次非分号字符([^;]+
部分)([^;]
部分),并且仅在到达分号时停止+
标志使匹配全局化,即不只是查找第一个匹配并停止g
/(L\d:[a-zA-Z0-9\s]+;)/
正则表达式是:
/L\d+:[^;]*/g
意思是,以L
开头,后跟一个或多个数字的序列(\d+
),:
,以及不包括的零个或多个字符的序列代码>([^;]*
)。结尾的g
表示“全局”,并使正则表达式应用于多个事件
与匹配一起使用:
var parts = test.match(/L\d+:[^;]*/g);
你试过什么?如果你不懂正则表达式,这里有一个很好的学习资源:请通读正则表达式的基础知识。