我有一个数组,我用forEach方法抛出这个数组,每个数组项看起来像" text; text"或" text:text"。 我拆分了这些项目,但是如何让程序理解哪个字符分开。
array.forEach(function(item, i) {
// this solution don't work
var logpass = item.split(':') || item.split(';');
//do something with this var
});

答案 0 :(得分:1)
传递正则表达式
var logpass = item.split(/:|;/);
这意味着分开':'或者';'字符就像
"text:text".split(/:|;/); // ["text", "text"]
"text;text".split(/:|;/); // ["text", "text"]
答案 1 :(得分:1)
您可以将正则表达式与split()
一起使用。
要分割任何一个字符,而不知道哪个字符会提前使用,但要知道这两个字符不会出现在字符串中而不是作为分隔符:
var logpass = item.split(/[:;]/);
答案 2 :(得分:-2)
使用以下方式访问元素:
int main()
{
int p = 0;
for( int x=-5; x<=5; ++x )
for( int y=-5; y<=5; ++y )
for( z=-5; z<=5; ++z)
if( 3*x + y*y*y - z*z == 0 )
++p;
std::cout << p << std::endl;
return 0;
}