我认为我有一个正则表达式的问题: 我想要一个字符串,它可以包含第一个圆括号中的所有字符串,最后是[最后一个]。 正则表达式如下:javascript正则表达式(字的结尾)
var pattern = /^(([a-zA-Z0-9\.\_\-\(\)\\'\xE0\xE8\xE9\xF9\xF2\xEC\x27\,\/]\s?)*\[?([a-zA-Z0-9\.\_\-\(\)\\'\xE0\xE8\xE9\xF9\xF2\xEC\x27\,\/]\s?)*\]?)+$/;
的问题是,如果我尝试测试以下字符串Maionese [dfvdfv] // @ 我的程序将永远循环下去: - |
我用来测试的功能如下:
//the alert doesn't works
alert(checkSpecialIngredienti("Maionese [dfvdfv]@"));
function checkSpecialIngredienti(s) {
var pattern = /^(([a-zA-Z0-9\.\_\-\(\)\\'\xE0\xE8\xE9\xF9\xF2\xEC\x27\,\/]\s?)*\[?([a-zA-Z0-9\.\_\-\(\)\\'\xE0\xE8\xE9\xF9\xF2\xEC\x27\,\/]\s?)*\]?)+$/;
if (!pattern.test(s)) {
alert("Attenzione, il campo "+s+"" +
" che hai inserito non va bene!" +
"\nIn questo campo puoi inserire " +
"lettere, numeri, lettere accentate," +
"punteggiatura classica, singoli spazi e" +
"\nuna sola coppia di parentesi quadre." +
"\nRiprova!");
return (false);
} else
return true;
}
我没有看到任何可能的方式让您的程序循环使用此代码。 –
我知道没有循环,但程序停止。 – Martina
请提供一个[简短自包含的正确示例](http://sscce.org)来说明您的问题。 [JSFiddle](http://jsfiddle.net)是一个很棒的工具。 –