这是我的PHP正则表达式:
if(preg_match('/^(([^,]+,){4}[^,]+'n){3}$/', $all_questions))
{
//Code here
}
这就是我试图将其转换为Javascript的方式:
if(fullString.match('/^(([^,]+,){4}[^,]+'n){3}$/'))
{
//Code here
}
尽管如此,PHP和Javascript之间的regex语言略有不同,我不确定如何将其从PHP转换为Javascript。
下面是我试图验证的一个例子:
question1,answer1,answer2,answer3,answer4
question2,answer1,answer2,answer3,answer4
question3,answer1,answer2,answer3,answer4
我需要验证确切的格式,即:
string[comma]string[comma]string[comma]string[comma]string[linebreak]
string[comma]string[comma]string[comma]string[comma]string[linebreak]
string[comma]string[comma]string[comma]string[comma]string[linebreak]
每行总是有5个字符串和4个逗号,从不多也从不少。
这就是我的PHP preg_match的样子:
if(preg_match('/^(([^,]+,){4}[^,]+'n){3}$/', $fullString))
{
//Code here
}
有人能帮我把它转换成Javascript正则表达式吗?
非常感谢,谢谢!
您不需要在javascript中使用字符串。您可以简单地使用正则表达式对象:
str.match(/^(([^,]+,){4}[^,]+'n){3}$/);
你可以自己试试:http://jsfiddle.net/mBb4S/
此外,MDN还有一些关于正则表达式的不错的信息:https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/RegExp