按多个字符串或冒号(jQuery)拆分

时间:2017-10-26 15:51:56

标签: jquery regex

我知道要按字符串分割我可以使用,例如x.split(/Age:|Date:/g); How split a string in jquery with multiple strings as separator并按字符分割,例如:我可以使用x.split(':');

如果适用,我需要通过以下方式分割字符串

:
am
AM
pm
PM

试过这两个但是他们不能工作。

var array = str.split('/:|am|AM|pm|PM/g');
var array = str.split('/\:|am|AM|pm|PM/g');
var array = str.split('/(:|am|AM|pm|PM)/g');

JSFiddle https://jsfiddle.net/dkasce2e/1/

2 个答案:

答案 0 :(得分:3)

使用正则表达式时不要使用引号。请改用以下内容

var array = str.split(/:|am|AM|pm|PM/g);

以下是您的完整示例:

function splitTime(str) {

	var array = str.split(/:|am|AM|pm|PM/g);
        console.log("[0]: " + array[0] + " [1]: " + array[1] + " [2]: " + array[2]);

}

splitTime('12:20am');
splitTime('00:20am');
splitTime('4:00PM');
splitTime('14:30am');

支持RegEx不带引号,通常由/包围,后跟访问标志。在Javascript RegEx在String Object的matchreplacesearchsplit函数中受支持。 更多详情可在Javascript Regular Expressions Guide in Mozilla

中找到

答案 1 :(得分:1)

Regex并没有在JS中引用引号。 ' / myregexpattern /'将寻找那个字符串。使用/ yourpatternhere /而不是。